Как заблокировать загрузку metadata.xml из другого репозитория при сборке maven - PullRequest
1 голос
/ 28 октября 2019

каждый раз, когда я строю наш проект, он всегда показывает некоторые предупреждения, подобные этому

[WARNING] Could not transfer metadata {one of our own snapshot lib}/maven-metadata.xml from/to repository.jboss.org (http://repository.jboss.org/nexus/content/groups/public/): Connect to repository.jboss.org:443 [repository.jboss.org/209.132.182.97] failed: Connection timed out (Connection timed out)

[INFO] Downloading: https://maven.java.net/content/repositories/xxx/1.0.0-SNAPSHOT/maven-metadata.xml
[INFO] Downloading: https://repository.apache.org/content/repositories/xxx/1.0.0-SNAPSHOT/maven-metadata.xml
[INFO] Downloading: http://snapshots.repository.codehaus.org/xxx/1.0.0-SNAPSHOT/maven-metadata.xml

, которые мы обычно можем успешно завершить, но через некоторое время он будет блокировать процесс сборки на один час или более.

Интересно то, что эта библиотека является нашей собственной библиотекой на нашем собственном сервере Nexus, но Maven всегда пытается загрузить свои метаданные из другого стороннего хранилища.

Что мне делать?

Ответы [ 2 ]

0 голосов
/ 28 октября 2019

Единственная причина для загрузки Maven - SNAPSHOTs (это, вероятно, ясная причина) или диапазоны версий. Если прямая или транзитивная зависимость использует диапазон версий (который не всегда виден), Maven загрузит метафайл. В зависимости от вашего проекта вы должны попытаться минимизировать это и заблокировать эти версии в вашем собственном проекте. Это сделает сборку быстрее и надежнее. Вы должны быть в состоянии точно настроить Nexus относительно времени ожидания и т. Д.

0 голосов
/ 28 октября 2019

Вы, вероятно, указали этот репозиторий jboss, к которому по какой-то причине вы не можете подключиться, в вашем settings.xml. Он также может быть получен из файла POM, если ваш settings.xml не имеет зеркальной записи.

Кроме того, хранилище jboss, вероятно, приходит перед внутренним хранилищем, так что Maven пытается посмотретьсначала.

Лучше всего обычно управлять всеми внешними репозиториями через сервер Nexus компании и просто указать на это в setting.xml.

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