调用init方法失败;添加Hibernate envers后的嵌套异常是java.lang.NoSuchMethodError

调用init方法失败;添加Hibernate envers后的嵌套异常是java.lang.NoSuchMethodError,java,spring,hibernate,hibernate-envers,Java,Spring,Hibernate,Hibernate Envers,我正在尝试将HibernateEnvers添加到我们的一个SpringMVC项目中。我的实体类在单独的maven模块中,我在那里使用envers,然后将其作为本地maven repo安装,并在实际的Spring项目中作为依赖项使用。没有envers,一切正常。 我的hibernate Spring项目中的依赖关系树是: [INFO] +- org.hibernate.javax.persistence:hibernate-jpa-2.1-api:jar:1.0.0.Final:compile [

我正在尝试将HibernateEnvers添加到我们的一个SpringMVC项目中。我的实体类在单独的maven模块中,我在那里使用envers,然后将其作为本地maven repo安装,并在实际的Spring项目中作为依赖项使用。没有envers,一切正常。 我的hibernate Spring项目中的依赖关系树是:

[INFO] +- org.hibernate.javax.persistence:hibernate-jpa-2.1-api:jar:1.0.0.Final:compile
[INFO] +- org.hibernate:hibernate-core:jar:5.3.9.Final:compile
[INFO] |  \- org.hibernate.common:hibernate-commons-annotations:jar:5.0.4.Final:compile
[INFO] +- org.hibernate:hibernate-ehcache:jar:5.3.9.Final:compile
[INFO] |  \- (org.hibernate:hibernate-core:jar:5.3.9.Final:compile - omitted for duplicate)
[INFO] +- org.hibernate:hibernate-spatial:jar:5.3.9.Final:compile
[INFO] |  \- (org.hibernate:hibernate-core:jar:5.3.9.Final:compile - omitted for duplicate)
[INFO] +- az.asdf.dcs:az.asdf.dcs.core:jar:1.1:compile
[INFO] |  +- (org.hibernate.javax.persistence:hibernate-jpa-2.1-api:jar:1.0.0.Final:compile - omitted for duplicate)
[INFO] |  +- (org.hibernate:hibernate-core:jar:4.3.6.Final:compile - omitted for conflict with 5.3.9.Final)
[INFO] |  +- (org.hibernate:hibernate-spatial:jar:4.3-SNAPSHOT:compile - omitted for conflict with 5.3.9.Final)
[INFO] |  \- (org.hibernate:hibernate-envers:jar:5.3.9.Final:compile - omitted for duplicate)
[INFO] \- org.hibernate:hibernate-envers:jar:5.3.9.Final:compile
[INFO]    \- (org.hibernate:hibernate-core:jar:5.3.9.Final:compile - omitted for duplicate)
对于Spring依赖项:

[INFO] +- org.springframework:spring-core:jar:4.3.3.RELEASE:compile
[INFO] +- org.springframework:spring-webmvc:jar:4.3.3.RELEASE:compile
[INFO] |  +- org.springframework:spring-aop:jar:4.3.3.RELEASE:compile
[INFO] |  |  +- (org.springframework:spring-beans:jar:4.3.3.RELEASE:compile - omitted for duplicate)
[INFO] |  |  \- (org.springframework:spring-core:jar:4.3.3.RELEASE:compile - omitted for duplicate)
[INFO] |  +- org.springframework:spring-beans:jar:4.3.3.RELEASE:compile
[INFO] |  |  \- (org.springframework:spring-core:jar:4.3.3.RELEASE:compile - omitted for duplicate)
[INFO] |  +- org.springframework:spring-context:jar:4.3.3.RELEASE:compile
[INFO] |  |  +- (org.springframework:spring-aop:jar:4.3.3.RELEASE:compile - omitted for duplicate)
[INFO] |  |  +- (org.springframework:spring-beans:jar:4.3.3.RELEASE:compile - omitted for duplicate)
[INFO] |  |  +- (org.springframework:spring-core:jar:4.3.3.RELEASE:compile - omitted for duplicate)
[INFO] |  |  \- (org.springframework:spring-expression:jar:4.3.3.RELEASE:compile - omitted for duplicate)
[INFO] |  +- (org.springframework:spring-core:jar:4.3.3.RELEASE:compile - omitted for duplicate)
[INFO] |  +- org.springframework:spring-expression:jar:4.3.3.RELEASE:compile
[INFO] |  |  \- (org.springframework:spring-core:jar:4.3.3.RELEASE:compile - omitted for duplicate)
[INFO] |  \- org.springframework:spring-web:jar:4.3.3.RELEASE:compile
[INFO] |     +- (org.springframework:spring-aop:jar:4.3.3.RELEASE:compile - omitted for duplicate)
[INFO] |     +- (org.springframework:spring-beans:jar:4.3.3.RELEASE:compile - omitted for duplicate)
[INFO] |     +- (org.springframework:spring-context:jar:4.3.3.RELEASE:compile - omitted for duplicate)
[INFO] |     \- (org.springframework:spring-core:jar:4.3.3.RELEASE:compile - omitted for duplicate)
[INFO] +- org.springframework:spring-tx:jar:4.3.3.RELEASE:compile
[INFO] |  +- (org.springframework:spring-beans:jar:4.3.3.RELEASE:compile - omitted for duplicate)
[INFO] |  \- (org.springframework:spring-core:jar:4.3.3.RELEASE:compile - omitted for duplicate)
[INFO] +- org.springframework:spring-orm:jar:4.3.3.RELEASE:compile
[INFO] |  +- (org.springframework:spring-beans:jar:4.3.3.RELEASE:compile - omitted for duplicate)
[INFO] |  +- (org.springframework:spring-core:jar:4.3.3.RELEASE:compile - omitted for duplicate)
[INFO] |  +- org.springframework:spring-jdbc:jar:4.3.3.RELEASE:compile
[INFO] |  |  +- (org.springframework:spring-beans:jar:4.3.3.RELEASE:compile - omitted for duplicate)
[INFO] |  |  +- (org.springframework:spring-core:jar:4.3.3.RELEASE:compile - omitted for duplicate)
[INFO] |  |  \- (org.springframework:spring-tx:jar:4.3.3.RELEASE:compile - omitted for duplicate)
[INFO] |  \- (org.springframework:spring-tx:jar:4.3.3.RELEASE:compile - omitted for duplicate)
[INFO] +- org.springframework:spring-aspects:jar:4.3.3.RELEASE:compile
[INFO] +- org.springframework.security:spring-security-core:jar:4.2.4.RELEASE:compile
[INFO] |  +- (org.springframework:spring-aop:jar:4.3.12.RELEASE:compile - omitted for conflict with 4.3.3.RELEASE)
[INFO] |  +- (org.springframework:spring-beans:jar:4.3.12.RELEASE:compile - omitted for conflict with 4.3.3.RELEASE)
[INFO] |  +- (org.springframework:spring-context:jar:4.3.12.RELEASE:compile - omitted for conflict with 4.3.3.RELEASE)
[INFO] |  +- (org.springframework:spring-core:jar:4.3.12.RELEASE:compile - omitted for conflict with 4.3.3.RELEASE)
[INFO] |  \- (org.springframework:spring-expression:jar:4.3.12.RELEASE:compile - omitted for conflict with 4.3.3.RELEASE)
[INFO] +- org.springframework.security:spring-security-web:jar:4.2.4.RELEASE:compile
[INFO] |  +- (org.springframework.security:spring-security-core:jar:4.2.4.RELEASE:compile - omitted for duplicate)
[INFO] |  +- (org.springframework:spring-beans:jar:4.3.12.RELEASE:compile - omitted for conflict with 4.3.3.RELEASE)
[INFO] |  +- (org.springframework:spring-context:jar:4.3.12.RELEASE:compile - omitted for conflict with 4.3.3.RELEASE)
[INFO] |  +- (org.springframework:spring-core:jar:4.3.12.RELEASE:compile - omitted for conflict with 4.3.3.RELEASE)
[INFO] |  +- (org.springframework:spring-expression:jar:4.3.12.RELEASE:compile - omitted for conflict with 4.3.3.RELEASE)
[INFO] |  \- (org.springframework:spring-web:jar:4.3.12.RELEASE:compile - omitted for conflict with 4.3.3.RELEASE)
[INFO] +- org.springframework.security:spring-security-config:jar:4.2.4.RELEASE:compile
[INFO] |  +- (org.springframework.security:spring-security-core:jar:4.2.4.RELEASE:compile - omitted for duplicate)
[INFO] |  +- (org.springframework:spring-aop:jar:4.3.12.RELEASE:compile - omitted for conflict with 4.3.3.RELEASE)
[INFO] |  +- (org.springframework:spring-beans:jar:4.3.12.RELEASE:compile - omitted for conflict with 4.3.3.RELEASE)
[INFO] |  +- (org.springframework:spring-context:jar:4.3.12.RELEASE:compile - omitted for conflict with 4.3.3.RELEASE)
[INFO] |  \- (org.springframework:spring-core:jar:4.3.12.RELEASE:compile - omitted for conflict with 4.3.3.RELEASE)
[INFO] \- az.asdf.dcs:az.asdf.dcs.core:jar:1.1:compile
[INFO]    \- org.springframework.data:spring-data-cassandra:jar:2.0.2.RELEASE:compile
[INFO]       +- (org.springframework:spring-context:jar:5.0.2.RELEASE:compile - omitted for conflict with 4.3.3.RELEASE)
[INFO]       +- (org.springframework:spring-beans:jar:5.0.2.RELEASE:compile - omitted for conflict with 4.3.3.RELEASE)
[INFO]       +- (org.springframework:spring-core:jar:5.0.2.RELEASE:compile - omitted for conflict with 4.3.3.RELEASE)
[INFO]       +- (org.springframework:spring-tx:jar:5.0.2.RELEASE:compile - omitted for conflict with 4.3.3.RELEASE)
[INFO]       +- (org.springframework:spring-expression:jar:5.0.2.RELEASE:compile - omitted for conflict with 4.3.3.RELEASE)
[INFO]       \- org.springframework.data:spring-data-commons:jar:2.0.2.RELEASE:compile
[INFO]          +- (org.springframework:spring-core:jar:5.0.2.RELEASE:compile - omitted for conflict with 4.3.3.RELEASE)
[INFO]          \- (org.springframework:spring-beans:jar:5.0.2.RELEASE:compile - omitted for conflict with 4.3.3.RELEASE)
我在这里没有看到任何版本冲突。但当我尝试运行时,会出现以下异常:

Unsatisfied dependency expressed through field 'sessionFactory'; 
nested exception is org.springframework.beans.factory.BeanCreationException:
Error creating bean with name 'sessionFactory' defined in class path resource [Spring-Hibernate.xml]:
Invocation of init method failed; nested exception is java.lang.NoSuchMethodError: org.hibernate.envers.configuration.internal.GlobalConfiguration.<init>(Lorg/hibernate/envers/boot/internal/EnversService;Ljava/util/Map;)V]]
通过字段“sessionFactory”表示未满足的依赖关系;
嵌套异常为org.springframework.beans.factory.BeanCreationException:
创建在类路径资源[Spring Hibernate.xml]中定义的名为“sessionFactory”的bean时出错:
调用init方法失败;嵌套的异常是java.lang.NoSuchMethodError:org.hibernate.envers.configuration.internal.GlobalConfiguration。(Lorg/hibernate/envers/boot/internal/EnversService;Ljava/util/Map;)V]]
欢迎提出任何建议

更新:以下是我在核心和Spring项目中的pom.xml:

核心模块:

<dependencies>
    <dependency>
        <groupId>org.hibernate.javax.persistence</groupId>
        <artifactId>hibernate-jpa-2.1-api</artifactId>
        <version>1.0.0.Final</version>
    </dependency>
    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-core</artifactId>
        <version>4.3.6.Final</version>
    </dependency>
    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-spatial</artifactId>
        <version>4.3-SNAPSHOT</version>
        <exclusions>
            <exclusion>
                <groupId>org.hibernate</groupId>
                <artifactId>hibernate-core</artifactId>
            </exclusion>
        </exclusions>
    </dependency>

    <!-- https://mvnrepository.com/artifact/org.hibernate/hibernate-envers -->
    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-envers</artifactId>
        <version>5.3.9.Final</version>
    </dependency>

    <dependency>
        <groupId>org.springframework.data</groupId>
        <artifactId>spring-data-cassandra</artifactId>
        <version>2.0.2.RELEASE</version>
    </dependency>

</dependencies>

org.hibernate.javax.persistence
hibernate-jpa-2.1-api
1.0.0.1决赛
org.hibernate
冬眠核心
4.3.6.最终版本
org.hibernate
冬眠空间
4.3-1
org.hibernate
冬眠核心
org.hibernate
冬眠使者
5.3.9.最终版本
org.springframework.data
弹簧数据卡桑德拉
2.0.2.1发布
Spring项目:

<properties>
    <endorsed.dir>${project.build.directory}/endorsed</endorsed.dir>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <springframework.version>4.3.3.RELEASE</springframework.version>
    <spring.security.version>4.2.4.RELEASE</spring.security.version>
    <hibernate.version>5.3.9.Final</hibernate.version>
</properties>

<dependencies>
    <!--Spring resources-->
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-core</artifactId>
        <version>${springframework.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-webmvc</artifactId>
        <version>${springframework.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-tx</artifactId>
        <version>${springframework.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-orm</artifactId>
        <version>${springframework.version}</version>
    </dependency>
    <!-- Spring + aspects -->
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-aspects</artifactId>
        <version>${springframework.version}</version>
    </dependency>

    <!-- Spring Security -->
    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-core</artifactId>
        <version>${spring.security.version}</version>
    </dependency> 
    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-web</artifactId>
        <version>${spring.security.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-config</artifactId>
        <version>${spring.security.version}</version>
    </dependency>
    <!--Spring resources-->
    <!--Hybernate resources-->
    <dependency>
        <groupId>org.hibernate.javax.persistence</groupId>
        <artifactId>hibernate-jpa-2.1-api</artifactId>
        <version>1.0.0.Final</version>
    </dependency>
    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-core</artifactId>
        <version>${hibernate.version}</version>
    </dependency>
    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-ehcache</artifactId>
        <version>${hibernate.version}</version>
    </dependency>
    <dependency>
        <groupId>net.sf.ehcache</groupId>
        <artifactId>ehcache-core</artifactId>
        <version>2.6.11</version>
    </dependency>
    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-spatial</artifactId>
        <version>${hibernate.version}</version>
    </dependency>
    <!--Hybernate resources-->
    <!-- Apache Commons Upload -->
    <dependency>
        <groupId>commons-fileupload</groupId>
        <artifactId>commons-fileupload</artifactId>
        <version>1.2.2</version>
    </dependency>
    <dependency>
        <groupId>commons-io</groupId>
        <artifactId>commons-io</artifactId>
        <version>1.3.2</version>
    </dependency>
    <!-- Apache Commons Upload -->
    <!--for Log-->
    <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.17</version>
    </dependency>
    <!--for Log-->
    <!---->
    <dependency>
        <groupId>org.postgresql</groupId>
        <artifactId>postgresql</artifactId>
        <version>9.4.1211.jre7</version>
    </dependency>
    <!--Jackson JSON Parser-->
    <dependency>
        <groupId>org.codehaus.jackson</groupId>
        <artifactId>jackson-mapper-asl</artifactId>
        <version>1.9.13</version>
    </dependency>

    <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-databind</artifactId>
        <version>2.7.5</version>
    </dependency>

    <dependency>
        <groupId>org.codehaus.jackson</groupId>
        <artifactId>jackson-core-asl</artifactId>
        <version>1.6.3</version>
        <type>jar</type>
    </dependency>

    <dependency>
        <groupId>com.googlecode.json-simple</groupId>
        <artifactId>json-simple</artifactId>
        <version>1.1</version>
    </dependency>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.12</version>
    </dependency>

    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>javax.servlet-api</artifactId>
        <version>3.1.0</version>
    </dependency>

    <dependency>
        <groupId>org.eclipse.paho</groupId>
        <artifactId>org.eclipse.paho.client.mqttv3</artifactId>
        <version>1.1.0</version>
    </dependency>

    <!-- https://mvnrepository.com/artifact/commons-codec/commons-codec -->
    <dependency>
        <groupId>commons-codec</groupId>
        <artifactId>commons-codec</artifactId>
        <version>1.11</version>
    </dependency>


    <dependency>
        <groupId>javax</groupId>
        <artifactId>javaee-web-api</artifactId>
        <version>7.0</version>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>az.asdf.dcs</groupId>
        <artifactId>az.asdf.dcs.core</artifactId>
        <version>1.1</version>
    </dependency>

    <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-envers</artifactId>
        <version>${hibernate.version}</version>
    </dependency>

    <!-- https://mvnrepository.com/artifact/org.asteriskjava/asterisk-java -->
    <dependency>
        <groupId>org.asteriskjava</groupId>
        <artifactId>asterisk-java</artifactId>
        <version>2.0.2</version>
    </dependency>

</dependencies>

${project.build.directory}/project
UTF-8
4.3.3.1发布
4.2.4.1发布
5.3.9.最终版本
org.springframework
弹簧芯
${springframework.version}
org.springframework
SpringWebMVC
${springframework.version}
org.springframework
德克萨斯州春季
${springframework.version}
org.springframework
春季甲虫
${springframework.version}
org.springframework
春季方面
${springframework.version}
org.springframework.security
spring安全内核
${spring.security.version}
org.springframework.security
spring安全网
${spring.security.version}
org.springframework.security
spring安全配置
${spring.security.version}
org.hibernate.javax.persistence
hibernate-jpa-2.1-api
1.0.0.1决赛
org.hibernate
冬眠核心
${hibernate.version}
org.hibernate
休眠ehcache
${hibernate.version}
net.sf.ehcache
ehcache内核
2.6.11
org.hibernate
冬眠空间
${hibernate.version}
文件上传
文件上传
1.2.2
公地io
公地io
1.3.2
log4j
log4j
1.2.17
org.postgresql
postgresql
9.4.1211.jre7
org.codehaus.jackson
杰克逊地图绘制者
1.9.13
com.fasterxml.jackson.core
杰克逊数据绑定
2.7.5
org.codehaus.jackson
jackson core asl
1.6.3
罐子
com.googlecode.json-simple
简单json
1.1
朱尼特
朱尼特
4.12
javax.servlet
javax.servlet-api
3.1.0
org.eclipse.paho
org.eclipse.paho.client.mqttv3
1.1.0
通用编解码器
通用编解码器
1.11
爪哇
javaeewebapi
7
假如
az.asdf.dcs
az.asdf.dcs.core
1.1
org.hibernate
冬眠使者
${hibernate.version}
org.asteriskjava
星号java
2.0.2

弹簧芯
弹簧webmvc
弹簧tx
已经在
弹簧orm

请点击此处:

spring-security-web
spring-security-core
中也有同样的内容
spring-security-config

您还与使用记录的Dependencies的版本存在冲突

因与4.3.3.1版本冲突而省略

您的依赖项清楚地表明,您正试图在代码模块中使用Hibernate ORM 4.3.6.Final和Hibernate Envers 5.3.9.Final。正如其他人多次提到的,这是一种依赖冲突


简而言之,Hibernate Envers的版本应该与Hibernate Core的版本相同。

我认为.jar中存在一些冲突files@GaneshGudghe你是说hibernate罐子?我想这里有一个相关的问题@GaneshGudghe,我已经读过了。我的hibernate core和envers版本相同。请发布您的版本详细信息。正如我在依赖关系树中看到的,重复的依赖关系已经被忽略。此外,我认为它与Spring依赖关系无关,因为它在没有hibernate envers的情况下可以正常工作。对于测试,我已经注释掉了“冗余”依赖项,但现在它在启动期间抛出了另一个关于BeanDefinitionParsing的异常。顺便说一句,链接不起作用,但可读性更强,项目的2/3依赖项是重复的,不可读。另外,正如您在日志中看到的那样,许多依赖项可能会导致版本冲突。链接不起作用,因为您需要用您的spring依赖项替换“REPLACEME”噢,我的错:)毕竟它仍然不起作用,它与spring无关