hibernate4.1的DTDEntityResolver类找不到问题解决

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

问题表现:

今天调试一个web项目,使用的是hibernate4.1,使用jetty启动时,没有任何错误很正常。但打成war包放到tomcat的webapps目录下时,启动后就报错了

关键报错信息如下:

Caused by: java.lang.ClassNotFoundException: org.hibernate.util.DTDEntityResolver
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1305)
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1157)
    ... 65 more

错误原因:

hibernate3.5以后,hibernate-core已经集成了hibernate-annotations.jar,若自己再配置hibernate-annotations.jar版本与hibernate-core版本不相同,就会造成jar包冲突,从而产生该错误。

解决方法:

若是maven项目,则去除maven中引用的hibernate-annotations。

hibernate4.1的DTDEntityResolver类找不到问题解决_第1张图片

如果是javase工程,则直接删除:hibernate-annotations-xxx.jar 包就可以了

再次启动tomcat,问题消失。

转载于:https://my.oschina.net/u/2391658/blog/711336

你可能感兴趣的:(hibernate4.1的DTDEntityResolver类找不到问题解决)