Есть ли способ запретить зависимости от определенных артефактов в Maven? - PullRequest
1 голос
/ 03 декабря 2011

У меня проблема с артефактом maven для junit.Он поставляется с Hamcrest, но мне нравится использовать более позднюю версию Hamcrest, поэтому мои проекты должны использовать junit-dep и исключать зависимости hamcrest.

У меня есть родительский pom.xml с разделом dependencyManagement дляобработайте версию junit-dep, которую я хочу, и убедитесь, что Hamcrest исключен.Тем не менее, я постоянно сталкиваюсь с проблемой, когда какая-то другая тестовая библиотека включает транзитивную зависимость от junit.

Обратите внимание, что проблема заключается не в номере версии.Это конкретный артефакт.Я не хочу джунит, я хочу junit-dep.Есть ли способ сказать в моем управлении зависимостями (или где-либо еще), что я никогда не хочу вообще включать junit любой версии?

1 Ответ

2 голосов
/ 03 декабря 2011

К сожалению, в управлении зависимостями нет опции global exclude .

С другой стороны, если вы не хотите, чтобы JUnit jar включался, вы можете играть так жетрюк как commons-logging-99.0-does-not-exist.jar.

Вот ссылка, которая описывает трюк -> http://day -to-day-stuff.blogspot.com / 2007/10 / announce-version-99-do-not-exist.html

Лично я обнаружил, что легче выполнять работу, используя тег <exclusions>.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...