hibernate4 java.lang.NoClassDefFoundError: org/hibernate/util/DTDEntityResolver

今天搞基于模块项目开发框架的集成和搭建,在做jar依赖的时候,选择的是hibernate4 的jar依赖,但是在项目启动的时候发现老是报如下异常:

java.lang.NoClassDefFoundError: org/hibernate/util/DTDEntityResolver

报错:java.lang.NoClassDefFoundError: org/hibernate/util/DTDEntityResolver

找了好久,心中想肯定是hibernate 的jar版本的问题或者依赖jar不存在,发现Maven Dependencies依赖里明明没有hibernate-annotaion的jar包,这个是hibernate3才会有的,况且我用的 hibernate-commons-annotations-4.0.2.Final.jar,既然已经引进,肯定存在与之冲突的jar,刚刚说 Maven Dependencies里没有,但是我搭个war包,发现lib目录下有一个hibernate-annotations- 3.0.5.Final.jar的依赖,这才恍然大悟,自己刚开始搭建项目时候把3.0.5的jar放在的lib目录下,导致jar冲突,才出现上述错误 的!

说明:个人工作遗忘、不仔细,导致了问题的发生,这个要谨记!

原因:lib目录下多了hibernate-annotaion这个包,从hibernate3.5以后,这个包就已经包含在hibernate-core里面了,因此就不需要这个包了,hibernate4就更不用说啦!

转载于:https://www.cnblogs.com/jianmang/articles/4885862.html

你可能感兴趣的:(hibernate4 java.lang.NoClassDefFoundError: org/hibernate/util/DTDEntityResolver)