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