maven получил старую зависимость junit в ./m2/repository из ниоткуда

У меня есть проект java-maven

mvn instal

всегда получает .m2/repository/junit/junit/3.8.1 после того, как я его удалю. Я не понимаю, откуда это.

Я попробовал дерево зависимостей: mvn dependency:tree -Dverbose | grep "junit" Но он печатает только junit 5.4.0, который я действительно использую в своем проекте.

[INFO] +- org.junit.jupiter:junit-jupiter-engine:jar:5.4.0:test
[INFO] |  +- org.junit.platform:junit-platform-engine:jar:1.4.0:test
[INFO] |  |  \- org.junit.platform:junit-platform-commons:jar:1.4.0:test
[INFO] |  \- org.junit.jupiter:junit-jupiter-api:jar:5.4.0:test
[INFO] |     \- (org.junit.platform:junit-platform-commons:jar:1.4.0:test - omitted for duplicate)
[INFO] \- org.junit.jupiter:junit-jupiter-params:jar:5.4.0:test
[INFO]    \- (org.junit.jupiter:junit-jupiter-api:jar:5.4.0:test - omitted for duplicate)

Я хочу понять, почему maven всегда загружает старый junit, как я могу его отладить? Его нет ни в одном файле pom.xml, если это транзитивная зависимость, почему она не отображается в дереве зависимостей. Настоящая проблема в том, что я пытаюсь запустить PItest в IDEA, и он говорит, что у меня старая версия junit 3.8.1. Но я не использую его в своем проекте.


person Aleksandr Lovkov    schedule 26.05.2019    source источник
comment
обычно это означает, что другие зависимости имеют его как транзитивную зависимость... но без полного файла pom и т. д. трудно догадаться...   -  person khmarbaise    schedule 26.05.2019
comment
если он транзитивный, то дерево должно его показать. но это не так. pom.xml содержит только: commons-io com.google.guava 21.0 org.apache.logging.log4j org.junit.jupiter 5.4.0   -  person Aleksandr Lovkov    schedule 27.05.2019


Ответы (1)


mvn dependency:tree не показывает зависимости плагинов.

Вам нужно проверить зависимости вашего плагина. Вы можете сделать это с помощью mvn dependency:resolve-plugins, как описано здесь: https://maven.apache.org/plugins/maven-dependency-plugin/resolve-plugins-mojo.html

person Ruslan Akhundov    schedule 07.06.2019