Could not initialize class net.sf.cglib.beans.BeanCopier

本文探讨了使用BeanCopier进行对象拷贝时遇到的java.lang.NoClassDefFoundError异常问题。异常原因是项目中存在不同版本的Asm Jar包,导致Java无法确定初始化哪个版本的类。文章详细解释了如何排查和解决此类问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

            使用BeanCopier做对象拷贝时,出现 java.lang.NoClassDefFoundError: Could not initialize class net.sf.cglib.beans.BeanCopier 异常,但项目中是有该类的。
            Cglib依赖了Asm,后来发现项目中存在两个Asm的Jar包,按理来说Maven项目只会存在一个版本。该项目做了一个框架升级,项目中的Cglib版本过低,依赖的Asm过低,而SpringCloud中依赖的Asm是高版本。Asm高低版本Maven的groupId发生变更,导致了有两个Asm的Jar包存在。但类的包路径(package)没变,所以导致Java不知道初始化哪个Jar包的类,从而抛出 Could not initialize class
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值