尽管pom.xml中已排除复制重复的JAR

时间:2019-03-08 13:06:33

标签: maven maven-dependency

我正在尝试在我的一个项目中添加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

在这个问题上,您能帮忙吗?

谢谢

1 个答案:

答案 0 :(得分: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>