Easyexcel2.2.6遇到 class net.sf.cglib.core.DebuggingClassWriter has interface org.objectweb.asm.ClassVisitor as super class的问题


一、问题产生的原因:

    maven项目中使用了两个asm包。为什么maven中可以存在两个版本的相同jar包?原来3.3.1版本之后,asm迁移了:

 

 

 

 所以他们的groupId是不一样的,自然可以同时存在。如果项目中同时存在两个jar包,自然会引发一些莫名其妙的bug了。

com.alibaba.excel.exception.ExcelGenerateException: java.lang.IncompatibleClassChangeError: class net.sf.cglib.core.DebuggingClassWriter has  interface org.objectweb.asm.ClassVisitor as  super class

  

 

二、解决冲突

在idea的show dependencies功能中可以看到,有两个版本的asm。一个是3.3.1的,一个是4.1的。4.1的是当前spring使用的,所以尽量不要动他。

而3.1的引用来自于repid-core,他的版本比较老,使用的还是3.3.1 asmjar包。

 目前有两个选择:

1、使用更高的repid-core版本,看其是否使用高于3.3.1版本的asm包。

2、在pom中去掉rapid-core

 

OK,问题解决!

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM