java.lang.NoClassDefFoundError: org/hibernate/cfg/HbmBinder$SecondPass 异常解决办法

      因为很久没有接触JAVA框架的东西了,今天在熟悉之前做的一个SSH框架的时候报了一个错:

      java.lang.NoClassDefFoundError:org/hibernate/cfg/HbmBinder$SecondPass

      GOOGLE了下,发现很多人都说直接删除:lib下的hibernate-annotations.jar即可,我照做了,确实成功解决了这个问题,但是我不清楚到底是什么原因导致的。找很多办法之后,大概知道了具体的原因。

      首先在我本地搜索annotations.jar发现在MYECLIPSE下出现了2次:

MyEclipse/eclipse/plugins/com.genuitec.org.hibernate.eclipse/lib/annotations - 223M

MyEclipse/eclipse/plugins/com.genuitec.eclipse.springframework/data/1.2/lib/dependencies/hibernate - 128M

      很明显128M的这个是旧版本,说明在spring1.2这个版本中hibernate包含了一个旧版本的jar包,所以就会导致这个问题,解决办法就很简单了,可以

      1、删除掉lib中旧版本的hibernate-annotations.jar。

      2、或者把223M的这个版本的JAR包复制到lib下。

      3、或者把223M的JAR包直接覆盖掉128M的,一劳永逸!

      不知道我说得是否清楚,如果有其他更好的解决办法的朋友请留言,大家讨论~

你可能感兴趣的:(J2EE-异常)