這篇文章主要介紹了idea中解決maven包衝突的問題(maven helper),小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
日常開發中經常會遇到xxx.class 找不到的異常,但是這個類確實存在我們的項目中,就會感覺很離奇,其實這就是包衝突的問題
衝突問題
比如項目中引用了兩個 fastjson.jar的版本,分別爲
- fastjson:1.2.28
- fastjson:1.2.3
我們用到了1.2.28中的某個類, 比如 A類,在版本更新中 1.2.3版本去掉了這個類,然而我們項目中maven 卻把1.2.3的 jar 打包進去了,那我們就會報異常,不存在這個 class,但是我們調錯誤的時候卻發現這個類存在,那我們怎麼找到問題根源呢,到底是哪個包的需要Exclude 呢,我之前也不會,今天有幸找到個方法,分享給大家。
idea 中maven 問題
idea 中查看 maven 依賴只會給你一個複雜到極點圖,基本沒有啥價值,所以要安裝個插件 maven helper,這個插件用了都說好啊
解決問題
首先安裝插件 maven helper(因爲我已經安裝了,所以沒 install 的按鈕了)
安裝完成後,在 pom 文件下方會出現這個東西
點進去你會發現彷彿回到了 eclipse
接下來到重點了,選中衝突選項 conflicts,這一列都是存在衝突的包
以fastjson 爲例
當然我們調錯誤的時候也可以直接搜索有問題的包,如下
選中右鍵就可以 Exclude 啦,想用1.2.28就把其他版本的Exclude掉,想用1.2.3就把其他版本的Exclude掉,是不是很方便。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持神馬文庫。