Nexus не может разрешить зависимости моментальных снимков, но я могу найти его в nexus / content / groups / public - PullRequest
4 голосов
/ 30 марта 2011

Можете ли вы дать мне знать, если вы видели эту проблему?Моя установка nexus больше не может найти снимки для внутренних репозиториев.Я вижу банку для рассматриваемого снимка ниже, nexus / content / groups / public, но когда я выполняю простой проект maven, я получаю сообщение об отсутствующем артефакте:

mvn clean package -U -s c:\sandbox\maven-settings.xml
...
Missing:
----------
1) com.bar:foo:jar:1.0.0-SNAPSHOT
Try downloading the file manually from the project website.

Nexus : 1.5.0 Open Source Edition

Mvn : 2.2.1

Группа «Публичные репозитории» включает сторонние / внешние моментальные снимки и репозитории релизов, включая мой новый тестовый паз, который имеет только ком.bar.foo: jar: 1.0.0-SNAPSHOT в нем.

В группу «Хранилища общедоступных снимков» входят testsnap, мое внутреннее репозиторий моментальных снимков, снимки apache и ibiblio

Недавно два внутренних снимкапары / release, которые я прокси-серверы отключили от источника

Я не чистил SNAPSHOTS и у меня их было 123 ГБ.Я только что выполнил задание по очистке вчера, где я скопировал около 100 ГБ снимков.Я запустил реиндекс, и он все еще обрабатывается.

Пожалуйста, дайте мне знать, если у вас есть какие-либо идеи относительно того, что я могу проверить.Спасибо

Петр (Citizenkahn@gmail.com)

1 Ответ

4 голосов
/ 30 марта 2011

Это был урок предположений.Проблема не могла быть в моем maven-settings.xml, потому что

  • Я не изменил его навсегда
  • Все остальные мои сборки работают

Ну, не так быстро ... Мой файл настроек определил профиль Nexus, в котором Nexus является зеркалом. Из всех, кроме раздела, в котором этот профиль активен / отсутствует по умолчанию.

  <activeProfiles>
    <activeProfile>nexus</activeProfile>
  </activeProfiles>

Итак, почему это работаетв моей системе?У меня есть один хадсон, обрабатывающий все сборки, и у них есть общий локальный репозиторий Maven.Большинство сборок потребляет сторонние артефакты, когда они находятся непосредственно у источника.Поскольку все задания hudson развертывают артефакты на нексусе, выполняется фаза «установки», что означает, что они запускают локальное репозиторий maven.Когда выполняется задание, требующее внутреннего снимка, оно извлекает его из локального репозитория Maven.

Все это было хорошо, пока не был добавлен новый раб, где выполнялись только определенные задания.Общий кеш был разделен между двумя и вуаля, моментальный снимок не может быть найден, потому что сборка не собирается связывать, чтобы искать зависимости (хотя вывод mvn -X сообщал об этом как таковой ... что странно)

...