2016-11-17 49 views
0

我有一个与休眠问题。问题:在ServletContext资源[/WEB-INF/spring/appServlet/servlet-context.xml]中定义名称为'emf'的Bean时创建错误:调用init方法失败;嵌套的例外是java.lang.NoSuchMethodError:org.hibernate.cfg.Environment.verifyProperties(Ljava/UTIL /地图;)VNoSuchMethodError - org.hibernate.cfg.Environment

这是XML文件(servlet的上下文中):http://pastebin.com/BRYvbVTg

而且,我有从休眠状态只有一个依赖:

<dependency> 
    <groupId>org.hibernate</groupId> 
    <artifactId>hibernate-entitymanager</artifactId> 
    <version>5.2.4.Final</version> 
</dependency> 

在classpath中,尝试添加所有的软件包,具有相同的效果

完整堆栈跟踪:http://pastebin.com/wJy7QfPW

+0

最好添加一个完整的堆栈跟踪。 –

+0

看到这个答案http://stackoverflow.com/questions/11553202/java-lang-nosuchmethoderror-org-hibernate-cfg-environment-verifyproperties,看起来像类路径上的一些旧版本的hibernate – borowis

+0

我如何删除本地库Maven(Linux)? – mrchebik

回答

1
  1. As @ v.ladynev提到,提供完整的堆栈跟踪。
  2. 要删除本地lib中,找到并浏览到您的文件夹的.m2,/库/ ORG和删除休眠文件夹
  3. 考虑定义你的entityManagerFactory为

<property name="dataSource" ref="dataSource" />  
<property name="jpaVendorAdapter"> 
    <bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter" /> 
</property> 
<property name="jpaProperties"> 
    <props> 
     <prop key="hibernate.hbm2ddl.auto">update</prop> 
     <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>   
     <prop key="hibernate.connection.charSet">UTF-8</prop> 
     <prop key="hibernate.show_sql">true</prop> 
    </props> 
</property> 
<property name="packagesToScan" value="ru.mrchebik.model"/> 

我希望这有助于!

+0

这不能解决我的问题。 – mrchebik

相关问题