java.lang.IncompatibleClassChangeError:Implementing class

Yesterday_ Once_More發表於2020-12-20

java.lang.IncompatibleClassChangeError:Implementing class

網上查了各種方案,始終不能解決,最後才發現原來是類衝突,兩個類名稱一樣,類路徑也一樣,在不同的jar包中,一個是web專案的jar包,一個是web伺服器的jar包

class同名同路徑,這樣現場部署時,始終就走web伺服器的jar包中的類,不走web專案的類,把web伺服器中也就是tomcat的lib目錄下衝突的jar包乾掉,才最終解決問題。

經瞭解後才知道:原來為了避免web專案過大,就把一些第三方jar包放到了tomcat/lib/shared目錄下,才最終導致出現這個問題。

看了網上的解決思路:
1、檢查報錯的類的名稱是否和已有類或第三方資源的jar包中的類衝突
2、web專案本身的jar包衝突。
3、web專案的jar包與web伺服器中的jar包衝突。

相關文章