Дублирующиеся файлы JAR копируются, но исключаются из файла pom.xml - PullRequest
0 голосов
/ 08 марта 2019

Я пытаюсь добавить jdom 2.0.2 зависимость в один из моих проектов. Для этого я добавил следующую запись в pom.xml

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

Но после создания проекта я обнаружил, что скопированы и jdom 1.0, и jdom 2.0.2. Тогда я побежал mvn dependency:tree команда, которая показывает, что jdom 1.0 jar поступают из зависимости 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 Ответ

1 голос
/ 08 марта 2019

Посмотрите внимательно на вывод зависимости:

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

Идентификатор группы для зависимости jdom просто jdom, а не org.jdom. Исправьте исключение, и это должно сделать это.

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