SSH中出现java.lang.NoSuchMethodError: org.objectweb.asm.ClassWriter.(I)V

 

参考:http://hi.baidu.com/enter775/blog/item/81ab4512ad6ee15af919b839.html

java.lang.NoSuchMethodError: org.objectweb.asm.ClassWriter.<init>(I)V

解决办法:

把hibernate中的cglib-*.jar和asm-*.jar删除,添加spring中的cglib-2.1.3.jar

----------------------------------------------------------------------------------------------------------

http://hi.baidu.com/enter775/blog/item/81ab4512ad6ee15af919b839.html中写到

在Hibernate 3.2.6.ga 中的 cglib 是 cglib-2.1.3.,jar 使用 cglib-2.2.jar 则出现以上问题。

将包换掉,问题解决。

看来运用一种框架,还是尽量使用其原始的jar包构成的环境。以避免出现一些不可预知的错误。


扩展一下,了解下 cglib是什么?

CGlib概述:

cglib(Code Generation Library)是一个强大的,高性能,高质量的Code生成类库。它可以在运行期扩展Java类与实现Java接口。

cglib封装了asm,可以在运行期动态生成新的class。

cglib用于AOP,jdk中的proxy必须基于接口,cglib却没有这个限制。

你可能感兴趣的:(spring,AOP,Hibernate,ssh,library,generation)