Spring boot NoSuchMethodError:org.hibernate.Session.createQuery。当我用gradle构建spring引导jar时

Spring boot NoSuchMethodError:org.hibernate.Session.createQuery。当我用gradle构建spring引导jar时,spring-boot,gradle,gradle-plugin,Spring Boot,Gradle,Gradle Plugin,我的模块的gradle配置如下: group 'com.ifox.platform' version '1.0-SNAPSHOT' apply plugin: 'java' apply plugin: 'idea' sourceCompatibility = 1.8 repositories { mavenLocal() jcenter() } dependencies { compile project(":ifox-base-service") te

我的模块的gradle配置如下:

group 'com.ifox.platform'
version '1.0-SNAPSHOT'

apply plugin: 'java'
apply plugin: 'idea'

sourceCompatibility = 1.8

repositories {
    mavenLocal()
    jcenter()
}

dependencies {
    compile project(":ifox-base-service")

    testCompile group: 'junit', name: 'junit', version: '4.12'
}

buildscript {
    repositories {
        mavenLocal()
        jcenter()
    }
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:1.5.4.RELEASE")
    }
}
apply plugin: 'spring-boot'
如果我使用上述配置升级构建,我将得到一个jar文件。然后我执行:

javar -jar xxxx.jar
这很成功,我可以访问我的网站:

http://localhost:8080/swagger-ui.html
但当我测试名为listAll()的方法时,出现了一个异常:

java.lang.NoSuchMethodError: org.hibernate.Session.createQuery(Ljava/lang/String;)Lorg/hibernate/query/Query;
此时,也许你认为这是我的低级代码错误。我修改了gradle配置,如下所示:

group 'com.ifox.platform'
version '1.0-SNAPSHOT'

apply plugin: 'java'
apply plugin: 'idea'

sourceCompatibility = 1.8

repositories {
    mavenLocal()
    jcenter()
}

dependencies {
    compile project(":ifox-base-service")

    testCompile group: 'junit', name: 'junit', version: '4.12'
}
是的,我删除了spring引导插件配置。然后我再次测试我的方法(listAll),它成功地从数据库中获取了所有数据。 如何修复它?
是我的低级代码错误,还是spring boot插件配置错误?

故障的完整堆栈跟踪是什么?Spring引导插件将确保使用特定版本的Hibernate。我猜你的应用程序中还有其他东西与该版本的HibernateMy配置不兼容,springVersion=4.3.9.RELEASE springBootVersion=1.5.4.RELEASE hibernateVersion=5.2.10.Final。。。所有框架都是最新版本。你能给我一个兼容版本的列表吗?@AndyWilkinson非常感谢。我已经解决了这个问题。你是对的,因为Hibernate版本。我发现SpringBoot插件(1.5.4)依赖于Hibernate5.0默认值,但我之前配置了Hibernate5.2。顺便问一下,你知道如何将Hibernate版本提高到5.2吗?