2015-07-04 5 views
1

Я пытаюсь создать простой проект JPA Hibernate с инфраструктурой атмосферы.Spring JPA и log4j версия конфликта

Это Maven зависимость

<!-- Spring framework --> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-web</artifactId> 
     <version>4.1.5.RELEASE</version> 
    </dependency> 

    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-webmvc</artifactId> 
     <version>4.1.5.RELEASE</version> 
    </dependency> 

    <dependency> 
     <groupId>org.hibernate</groupId> 
     <artifactId>hibernate-core</artifactId> 
     <version>4.3.8.Final</version> 
    </dependency> 
    <dependency> 
     <groupId>org.hibernate</groupId> 
     <artifactId>hibernate-entitymanager</artifactId> 
     <version>4.3.8.Final</version> 
    </dependency> 
    <dependency> 
     <groupId>org.atmosphere</groupId> 
     <artifactId>atmosphere-runtime</artifactId> 
     <version>2.1.4</version> 
    </dependency> 
    <dependency> 
     <groupId>net.wimpi</groupId> 
     <artifactId>telnetd-x</artifactId> 
     <version>2.1.1</version> 
    </dependency> 
    <!-- Logging with SLF4J & LogBack --> 
    <dependency> 
     <groupId>org.slf4j</groupId> 
     <artifactId>slf4j-api</artifactId> 
     <version>1.7.5</version> 
     <scope>compile</scope> 
    </dependency> 
    <dependency> 
     <groupId>ch.qos.logback</groupId> 
     <artifactId>logback-classic</artifactId> 
     <version>1.0.13</version> 
     <scope>runtime</scope> 
    </dependency> 

Но я получаю версию конфликта с log4j и Spring зимуют JPA.

ошибка трассировки:

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in ServletContext resource [/WEB-INF/dispactherServlet.xml]: Invocation of init method failed; nested exception is java.lang.NoSuchFieldError: TRACE 
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1566) 
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:539) 
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:476) 
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:303) 
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) 
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:299) 
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194) 

Caused by: java.lang.NoSuchFieldError: TRACE 
at org.jboss.logging.Log4jLogger.translate(Log4jLogger.java:60) 
at org.jboss.logging.Log4jLogger.doLog(Log4jLogger.java:40) 
at org.jboss.logging.Logger.trace(Logger.java:107) 
at org.hibernate.boot.registry.selector.internal.StrategySelectorImpl.registerStrategyImplementor(StrategySelectorImpl.java:69) 
at org.hibernate.boot.registry.selector.internal.StrategySelectorBuilder.addDialect(StrategySelectorBuilder.java:248) 
at org.hibernate.boot.registry.selector.internal.StrategySelectorBuilder.addDialects(StrategySelectorBuilder.java:198) 
at org.hibernate.boot.registry.selector.internal.StrategySelectorBuilder.buildSelector(StrategySelectorBuilder.java:165) 
at org.hibernate.boot.registry.BootstrapServiceRegistryBuilder.build(BootstrapServiceRegistryBuilder.java:253) 
at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.buildBootstrapServiceRegistry(EntityManagerFactoryBuilderImpl.java:520) 
at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.<init>(EntityManagerFactoryBuilderImpl.java:208) 

Пожалуйста, помогите, спасибо

+0

Можете ли вы разместить свой конфигурационный файл log4j в своем вопросе? и какова версия log4j, которую вы используете? – Lucky

ответ

1

Попробуйте удалить log4j переходную зависимость от Telnetd-х:

<dependency> 
    <groupId>net.wimpi</groupId> 
    <artifactId>telnetd-x</artifactId> 
    <version>2.1.1</version> 
    <exclusions> 
     <exclusion> 
      <artifactId>log4j</artifactId> 
      <groupId>log4j</groupId> 
     </exclusion> 
    </exclusions> 
</dependency> 

Этот Lib использует старую версию Log4j (1.2.9), и это может быть источником ваших проблем.

+0

это работает, спасибо – Boopathi