当前位置: 代码迷 >> Web前端 >> Hibernate和spring整合出现NotFoundException: org.objectweb.asm.codevisitor异常的解决办法
  详细解决方案

Hibernate和spring整合出现NotFoundException: org.objectweb.asm.codevisitor异常的解决办法

热度:686   发布时间:2012-12-27 10:17:10.0
Hibernate和spring整合出现NotFoundException: org.objectweb.asm.codevisitor错误的解决方法
最近联系spring+jpa写写程序,遇到NotFoundException: org.objectweb.asm.codevisitor的错误时,原因主要可能有以下几点:
在使用Spring的AOP编程时,会用到这几个lib:
asm-2.2.2.jar
asm-commons-2.2.2.jar
asm-util-2.2.2.jar
Hibernate使用如下lib:
asm.jar
asm-attrs.jar
其中asm-2.2.2.jar与asm.jar存在类上的冲突!!!
使用其中之一或两者都使用,可能会出现如下错误:
java.lang.NoClassDefFoundError: org/objectweb/asm/CodeVisitor
java.lang.NoClassDefFoundError: org/objectweb/asm/commons/EmptyVisitor
java.lang.NoSuchMethodError: org.objectweb.asm.ClassVisitor.visit。。。。。。
解决办法是:
1.去掉类路径上的关于Hibernate的3个lib
asm.jar
asm-attrs.jar
cglib-2.1.3.jar
2.加入Spring中的以下4个lib
asm-2.2.2.jar
asm-commons-2.2.2.jar
asm-util-2.2.2.jar
cglib-nodep-2.1_3.jar

另外需要的注意的是,在使用MyEclipse编程时,有时候jar包从classpath中移除之后会放在WEB-INF\lib下,此时确定将WEB-INF\lib下的jar文件删除才行。
  相关解决方案