Поиск Nexus никогда не показывает последние версии артефактов

Наш магазин использует Nexus для прокси для Maven Central и некоторых других репозиториев. Время от времени мы используем его для поиска артефактов, чтобы узнать, могут ли быть доступны другие версии. Однако он редко, если вообще когда-либо, показывает эти новые версии вещей. Это много раз отталкивало разработчиков, которые ожидали увидеть их в Nexus, если они вообще существовали.

Недавним примером является версия 1.5.0.RELEASE org.springframework.flex:spring-flex. Его нигде не было в нашем индексе Nexus, но мы смогли найти его, погуглив Maven Central. Плагин версий Maven также смог его найти.

Как мы можем настроить наш Nexus для обновления его индексов, чтобы мы могли доверять ему в будущем?


person HDave    schedule 13.10.2011    source источник
comment
Хороший вопрос. Я быстро осмотрелся и нашел sonatype.com. /books/nexus-book/reference/, похоже, указывает, что это связано с настройкой удаленных индексов загрузки. Однако настройка не дала мне желаемого поведения.   -  person Jeen Broekstra    schedule 13.10.2011
comment
Да, на всех моих зеркалах репо для параметра загрузки удаленных индексов установлено значение true. Но у меня такое ощущение, что он загружается только тогда, когда вы настраиваете репозиторий.   -  person HDave    schedule 19.10.2011


Ответы (3)


Я вижу org.springframework.flex:spring-flex:1.5.0.RELEASE, когда ищу его, и у меня довольно простая установка Nexus. Проверьте в конфигурации репозитория «Максимальный возраст метаданных». Сначала войдите в систему, затем нажмите «Репозитории» на левой панели, выберите интересующий вас репозиторий («Maven Central», верно?) И щелкните вкладку «Конфигурация» внизу. «Макс. возраст метаданных» находится в разделе «Настройки срока действия». Если для этого параметра установлено значение «-1», это означает, что метаданные репо никогда не будут обновляться. У меня установлено значение 1440 минут (24 часа), и у меня никогда не было проблем с поиском новых артефактов. Проблема, которую вы описываете, - это именно то, что этот параметр должен предотвратить.

Если это не работает, вы можете попробовать настроить запланированную задачу для обновления ваших индексов. Войдите в систему как администратор, выберите «Администрирование» на левой панели и перейдите в «Назначенные задачи». Добавьте задачу с «Тип задачи» = «Загрузить индексы» и выберите репозиторий или группу репозиториев, к которым вы хотите применить ее (или «Все репозитории»). Убедитесь, что вы установили для него «Повторение». Сделайте это для каждого репозитория/группы, которые необходимо обновить.

person Ryan Stewart    schedule 20.10.2011
comment
У меня Nexus 1.5, и у меня нет этой опции, хотя я полагаю, что могу запланировать задачу. Запланирую задачу сейчас и обновлю до 1.9 позже сегодня или завтра и отчитаюсь. - person HDave; 20.10.2011
comment
Планирование повторной загрузки индексов для всех репозиториев имело значение. Я просто повторно запустил версии mvn: display-dependency-updates и сделал diff, и теперь я вижу еще более новые версии всего. Спасибо! - person HDave; 20.10.2011

Вы пытались настроить запланированную задачу для загрузки удаленных индексов?

person Stephan    schedule 20.10.2011

Nexus поддерживает запланированные задачи для выполнения всех виды обслуживания, и рекомендуется включать в него загрузку индекса. Почитайте книгу, в ней много полезной информации.

person Manfred Moser    schedule 20.10.2011