【问题标题】:Duplicate JARs are getting copied though excluded in pom.xml尽管在 pom.xml 中排除了重复的 JAR,但仍被复制
【发布时间】:2019-07-30 12:34:13
【问题描述】:

我正在尝试在我的一个项目中添加 jdom 2.0.2 依赖项。为了做到这一点,我在 pom.xml 中添加了以下条目

<dependency>
  <groupId>org.jdom</groupId>
  <artifactId>jdom</artifactId>
  <version>2.0.2</version>
</dependency>

但是在构建项目之后,我发现jdom 1.0jdom 2.0.2 都被复制了。然后我跑了mvn dependency:tree 命令显示 jdom 1.0 jars 来自 jaxen 1.1 依赖关系通过传递依赖。 为了排除该依赖项,我在 jaxen 依赖项中添加了排除项

<dependency>
      <groupId>jaxen</groupId>
      <artifactId>jaxen</artifactId>
      <version>1.1</version>
      <exclusions>
        <exclusion>
          <groupId>org.jdom</groupId>
          <artifactId>jdom</artifactId>
        </exclusion>
       </exclusions>
    </dependency>

但我仍然面临同样的问题。两个(jdom 1.0 和 2.0.2)jar 都被复制了。 mvn dependency:tree 也显示相同的结果

INFO] +- jaxen:jaxen:jar:1.1:compile
INFO] |  +- dom4j:dom4j:jar:1.6.1:compile
INFO] |  +- jdom:jdom:jar:1.0:compile

您能帮忙解决这个问题吗?

谢谢

【问题讨论】:

    标签: maven maven-dependency


    【解决方案1】:

    仔细看依赖输出:

    INFO] +- jaxen:jaxen:jar:1.1:compile
    INFO] |  +- dom4j:dom4j:jar:1.6.1:compile
    INFO] |  +- jdom:jdom:jar:1.0:compile
    

    jdom 依赖项的组 ID 只是 jdom,而不是 org.jdom。修复排除,应该这样做。

    <exclusion>
        <groupId>jdom</groupId>
        <artifactId>jdom</artifactId>
    </exclusion>
    

    【讨论】:

      猜你喜欢
      • 2020-05-14
      • 1970-01-01
      • 2021-01-03
      • 1970-01-01
      • 1970-01-01
      • 2016-01-01
      • 2017-03-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多