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>属性限制加载版本

 

版权声明:本文为cty136原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/cty136/p/11531942.html