attempting to get data from indexed table produces -java.lang.NoSuchMethodError: org.hibernate.query.internal.ParameterMetadataImpl

attempting to get data from indexed table produces -java.lang.NoSuchMethodError: org.hibernate.query.internal.ParameterMetadataImpl

我正在尝试从休眠搜索中检索数据,在为 table 编制索引后,我尝试进行搜索,但即使一切对我来说看起来都很完美,我还是收到此错误。我用谷歌搜索并找到了这个解决方案 但仍然没有提供解决问题的进展- java.lang.NoSuchMethodError: org.hibernate.query.internal.ParameterMetadataImpl.([Lorg/hibernate/engine/query/spi/OrdinalParameterDescriptor;Ljava/util/Map;)V

这是我的完整 pom.xml 文件

        <!--<dependency>-->
           <!--<groupId>org.hibernate</groupId>-->
           <!--<artifactId>hibernate-search-orm</artifactId>-->
           <!--<version>5.6.0.Final</version>-->
        <!--</dependency>-->

            <dependency>
                <groupId>org.hibernate</groupId>
                <artifactId>hibernate-entitymanager</artifactId>
            </dependency>
            <dependency>
                <groupId>org.hibernate</groupId>
                <artifactId>hibernate-validator</artifactId>
            </dependency>

            <dependency>
                <groupId>org.projectlombok</groupId>
                <artifactId>lombok</artifactId>
                <optional>true</optional>
            </dependency>

            <dependency>
                <groupId>org.hibernate</groupId>
                <artifactId>hibernate-search-orm</artifactId>
                <version>5.8.2.Final</version>
            </dependency>
        
        


</project>

请多多指教

您使用的 Hibernate Search 版本太旧,与 Spring Boot 提供的 Hibernate ORM 版本不兼容。

您应该检查 compatibility matrix on the Hibernate website 并相应地选择 Hibernate Search 版本。

Spring Boot 2.1.4.RELEASE uses Hibernate ORM 5.3.9.Final. According to the compatibility matrix, with Hibernate ORM 5.3.x, you should use Hibernate Search 5.10.x. As indicated here,目前5.10系列的最新版本是5.10.9.Final.

所以,改变这个:

            <dependency>
                <groupId>org.hibernate</groupId>
                <artifactId>hibernate-search-orm</artifactId>
                <version>5.8.2.Final</version>
            </dependency>

为此:

            <dependency>
                <groupId>org.hibernate</groupId>
                <artifactId>hibernate-search-orm</artifactId>
                <version>5.10.9.Final</version>
            </dependency>