1. 程式人生 > >maven引入jar包衝突問題

maven引入jar包衝突問題

 

1.原因

使用maven過程中,經常會遇到jar包重複載入或者jar包衝突的問題,但是有些jar包是由於maven載入了其他jar包自動引入的,並非自己主動新增的,導致和自己新增的jar包版本衝突

舉個栗子:

  自動化測試過程中,引用了testng的jar包,同時引用了reportng的jar,但是reportng會自動載入依賴傳遞的testng的jar包,這樣就導致和自己新增的testng的jar包版本衝突

       

  使用maven test 或者maven install命令執行測試時會報如下錯誤

  [WARNING] The POM for org.testng:testng:jar:5.14.3 is invalid, transitive dependencies (if any) will not be available, enable debug logging for more details

 

 

       

 

2.解決辦法:

  開啟pom.xml檔案,在Dependency Hierarchy(依賴列表)中檢視jar包的依賴層次關係  

 

選擇需要移除的jar包右鍵Exclude...,然後儲存pom.xml,這樣maven就不會再自動載入了,

或者也可以手動再pom中新增<exclusion>屬性限制載入版本

&n