Как запретить Maven 2 выполнять поиск в удаленных репозиториях определенных зависимостей, которые есть только в локальном репозитории?
Как предотвратить Maven 2 от поиск в удаленных репозиториях определенных зависимостей, которые находятся только в локальном репозитории
Ну, на самом деле, Maven не будет, если только:
.pom
. В этом случае вы можете предоставить его или сгенерировать (см. вопросы ниже). Чтобы запретить Maven проверять удаленные репозитории вообще, вы можете использовать флаг -o
. В противном случае Maven проверит актуальность всех зависимостей моментальных снимков. Вы можете использовать диспетчер зависимостей, такой как Nexus, чтобы получить детальный контроль над разрешением зависимостей. Раздел repository в вашем файле pom.xml
или settings.xml
также содержит элемент updatePolicy
, который позволяет настроить частоту обновления Maven. проверит наличие обновленных зависимостей.
Используйте фиксированные номера версий в вашем POM для ваших удаленных зависимостей или локальных версий, которые вы хотите получить из локального репозитория.
Maven старается быть дружелюбным и получать самые последние и лучшие из всего, для чего не указан номер версии.
Для быстрого исправления, чтобы не ждать загрузки из Интернета каждый раз при сборке, вы можете использовать mvn -o для принудительной автономной сборки, и тогда не будет теряться время, пытаясь получить новый версии.
Ответ @crowne также является очень хорошим советом, особенно при настройке собственного нексуса и настройке всех удаленных репозиториев, чтобы у вас никогда не было неприятных сюрпризов, когда репо исчезнет в один прекрасный день.