由一次改包名引起的java.lang.NoClassDefFoundError異常

由一次改包名引起的java.lang.NoClassDefFoundError異常

調試項目過程中發現項目的包名與第三方的jar包存在衝突,於是將項目的包名類名進行修改,引起java.lang.NoClassDefFoundError異常

調試過程:

1.開啓Spring包的debug級別日誌,查找類加載過程中是否出現修改前的類名以及修改後的類名,同時加載的情況。

比如:修改前的類名:WxMpController;修改後的類名:WxDBController;

在Debug日誌中都加載了這兩個類,怎麼回事呢??

一遍一遍的查看代碼命名只有WxDBController這個類了,爲什麼還會加載到修改前的WxMpController

請看到的WEB-INF文件下的class文件,看看是否存在WxMpController.class文件。

最終解決辦法:刪除web-inf文件下的class文件,重新編譯一次。刪除tomcat路徑下的編輯好的文件。

 

其它的原因請參考:https://blog.csdn.net/jamesjxin/article/details/46606307

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章