浏览 1627 次
|
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
|---|---|
| 作者 | 正文 |
|
时间:2007-11-23
spring2.5里面带了asm包是2.2.3,而hibernate3.2.4里面用的包版本比较老。
如果使用了spring2.5中新的asm包,会出现org.objectweb...的某些类或者方法找不到 解决方法:升级spring到2.5的时候,不要升级asm的包,使用hibernate的包。 不知道用spring2.5和其它版本的hibernate集成时会不会有类似问题。 声明:JavaEye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
| 返回顶楼 | |
|
时间:2007-11-23
这个问题应该Spring 2.0以来一直存在的。
hibernate 3.2 中cglib 2.1要用到 asm 1.x。。。而spring 2中使用的是asm 2.x。 www.sourcelabs.org 提供的sash 包是一个解决方案。 另外,自己也可以用相应的版本的cglib-nodep.jar(cglib网站提供了这个版本,已经将asm 打进包了)替换cglib.jar。 从Hibernate roadmap上可以看到,3.2.6会对cglib , asm进行升级。 |
|
| 返回顶楼 | |
|
时间:2007-12-19
对 2.0的时候就有这个问题 里面的一个方法好像新版本的asm里头变了
|
|
| 返回顶楼 | |
|
时间:2008-02-01
是哦,好象是 org.objectweb.asm.ClassVisitor.visit这个方法,构造函数变了好象一个是:
string,string,string[],string 另一个是: string,string,string,string[]; |
|
| 返回顶楼 | |
|
时间:2008-02-22
3.2.6已经发布,asm仍然使用的1.x,鉴定完毕。
hantsy 写道 这个问题应该Spring 2.0以来一直存在的。 hibernate 3.2 中cglib 2.1要用到 asm 1.x。。。而spring 2中使用的是asm 2.x。 www.sourcelabs.org 提供的sash 包是一个解决方案。 另外,自己也可以用相应的版本的cglib-nodep.jar(cglib网站提供了这个版本,已经将asm 打进包了)替换cglib.jar。 从Hibernate roadmap上可以看到,3.2.6会对cglib , asm进行升级。
|
|
| 返回顶楼 | |
|
时间:2008-02-25
我做项目的时候也发现这个问题了,还好spring的兼容性比较好,老的1.5.3还是能继续使用
|
|
| 返回顶楼 | |
|
时间:2008-05-07
我搞了一会儿,解决办法是修改asm-2.2.3.jar中的ClassVisitor类,添加一个方法
void visit ( int version, int access, String name, String superName, String[] interfaces, String sourceFile); 然后把asm-2.2.3.jar和asm.jar中的ClassVisitor类全删掉,并把修改好的ClassVisitor类,放到任意一个包里,同时要使用cglib-nodep-2.1_3.jar这个文件,不要用cglib2.1_3.jar这个文件,就OK了 |
|
| 返回顶楼 | |







