zoukankan      html  css  js  c++  java
  • 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>属性限制加载版本

    最后,因移除了jar包,项目可能会报错

      右键maven项目选择maven->update project...

      或者重新添加下依赖testng的jar包(自己添加的jar包也被移除了)

      

  • 相关阅读:
    Debian 安装配置(包括kdevelop)
    linux matlab2016 安装
    Qt5.7 无法输入中文问题
    阻塞方法与InterruptedException
    java的null
    原子性、可见性、有序性与指令重排序
    物理机内存模型与java内存模型
    java构造函数总结
    什么时候需要用super
    重载与重写
  • 原文地址:https://www.cnblogs.com/cty136/p/11531942.html
Copyright © 2011-2022 走看看