This question already has answers here:
How do I fix a NoSuchMethodError?

(28个答案)


3年前关闭。




我有休眠问题。问题:创建在ServletContext资源[/WEB-INF/spring/appServlet/servlet-context.xml]中定义的名称为'emf'的bean时出错:调用init方法失败;嵌套的异常是java.lang.NoSuchMethodError:org.hibernate.cfg.Environment.verifyProperties(Ljava / util / Map;)V

这是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

最佳答案

如@ v.ladynev所述,提供完整的堆栈跟踪。
要删除本地库,请找到并导航到您的.m2文件夹/ repository / org并删除休眠文件夹
考虑将您的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"/>




我希望这有帮助!

10-06 13:14