я клонировал репозиторий проекта Apache ActiveMQ Artemis (https://github.com/apache/activemq-artemis), а затем напечаталНастройки Maven для компиляции (вместо загрузки) зависимости
mvn -Ptests test -pl :integration-tests
Я был удивлен видеть сообщения журнала, как в следующем
...
Downloading: http://repository.apache.org/snapshots/org/apache/activemq/artemis-selector/1.4.0-SNAPSHOT/artemis-selector-1.4.0-20160625.030221-11.jar
Downloading: http://repository.apache.org/snapshots/org/apache/activemq/artemis-core-client/1.4.0-SNAPSHOT/artemis-core-client-1.4.0-20160625.030211-11.jar
...
Поскольку, например, artemis-core-client
содержится в репозитории git, который я клонировал в начале, я бы ожидал, что maven просто построит его оттуда.
Таким образом, когда я вношу изменения в основной клиентский источник, они получают результаты тестов интеграции.
Вместо этого maven загружает банку из хранилища.
Вопрос: Как настроить maven, чтобы всегда строить все модули, которые находятся в репозитории git, и загружать только «истинные» зависимости, что я имею в виду не в репозитории git?
По сути, это то же самое, как этот вопрос: http://stackoverflow.com/questions/33131880/maven-multi-module-project-not-find-sibling-module Вы должны запустить Maven из корневого проекта, а не непосредственно внутри модуля. Это связано с тем, что зависимости не установлены, поэтому Maven пытается их загрузить. – Tunaki
@Tunaki Итак, «-pl: integration-tests» - это то, что заставляет maven загружать, а не компилировать. Правильно? Потому что я запускаю mvn в каталоге, где находится основной файл проекта .pom. – user7610
Нет, в главном проекте нет модуля интеграционных тестов, проверьте мой ответ. Вы выполняете maven в тестовом/основном проекте, а не в библиотеке/главном проекте. –