天天看點

java.lang.NoClassDefFoundError: org/objectweb/asm/CodeVisitor 異常

用Spring內建hibernate時,錯誤:java.lang.NoClassDefFoundError: 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

引自:http://royboy.javaeye.com/blog/142449