java.lang.Error: java.lang.NoSuchMethodError: org.objectweb.asm.ClassWriter.<init>(Z)V
2024-10-21 16:31:37
有时候出现这种怪异的问题,是由于多个版本的class存在。
比如说:某个java编译成class后,放到classes下面,然后lib目录下,也有这个class所在的jar包,这样就导致classpath实际上有两个相同的class
说明编译时和运行时采用了不一样的jar .
再通过maven依赖树,查询到org.slf4j.slf4j-api-1.5.6.jar是被一个单点登录的jar依赖间接引入的,于是在父工程里面排除掉
org.slf4j.slf4j-api-1.5.6.jar间接依赖(顺便也排除掉了org.slf4j.slf4j-log4j12-1.5.6.jar这个适配器包) ,问题得到解决。
事后,我们再回顾出现的错误信息 ,java.lang.NoSuchMethodError ,其实这个类的继承体系结构
java.lang.Object
java.lang.Throwable
java.lang.Error
java.lang.LinkageError
java.lang.IncompatibleClassChangeError
java.lang.NoSuchMethodError
解决办法:
出现<init>(Z)V将
将cglib.jar 由2.1版本 改为 2.2
出现<init>(I)V将
将cglib.jar 由2.2版本 改为 2.1.
原因是因为cglib 包和asm包冲突,开始用的cglib包是cglib-2.1.3.jar ,后来换了一个cglib-2.2.jar才测试通过
最新文章
- ubuntu安全卸载移动硬盘(safely remove)
- Linux学期总结
- 简单的音乐播放器(VS 2010 + Qt 4.8.5)
- 高并发应用中客户端等待、响应时间的推算,及RT/QPS概念辨析
- iOS - UISlider
- [redis] Redis 配置文件置参数详解
- mysql的 join联合查询的通俗解释
- 用fiddler工具做接口测试
- Javascript——初步
- androidTv界面刷新跳动的问题
- jquery.imagezoom.js制作鼠标悬停图片放大镜特效、参数和最简教程
- vue mint-ui 实现省市区街道4级联动(仿淘宝京东收货地址4级联动)
- hibernate 动态多数据库
- Web开发人员学习路线图
- ADT SDK Manager启动时一闪而过
- Java对数
- Android之TCP服务器编程
- xss攻击问题以及如何防范
- XCODE 6.1.1 配置GLFW
- 10 -- 深入使用Spring -- 5...1 使用Quartz