Я заинтересован в поддержке Maven 2 репозитория для моей организации. Каковы некоторые из указателей и подводных камней, которые помогут.
Каковы руководящие принципы для пользователей, которые следует соблюдать при настройке стандартов для загрузки или публикации своих артефактов в репозитории при выпуске их кода? Какие у вас правила или правила для этого типа вещей? Что вы включаете в это в своем руководстве разработчика/документации?
ОБНОВЛЕНИЕ. Мы встали на сторону Nexus и были очень довольны этим - следовали большинству рекомендаций Sal и не испытывали никаких проблем. Кроме того, мы ограничили доступ к развертыванию и автоматическую сборку/развертывание артефактов моментальных снимков через сервер Hudson CI. Хадсон может анализировать все зависимости проекта вверх/вниз по потоку, поэтому, если проблема компиляции, сбой теста или какое-либо другое нарушение приводит к сбою сборки, развертывание не произойдет. Утомляйтесь развертыванием снимков в Maven2/Maven3, так как метаданные изменились между двумя версиями. Стратегия развертывания моментальных снимков только для Хадсона смягчит это. Мы не используем плагин выпусков, но написали некоторое плавание вокруг плагина Версии при перемещении моментального снимка для выпуска. Мы также используем m2eclipse, и, похоже, он отлично работает с Nexus, так как из файла настроек он может видеть Nexus и знает, как индексировать информацию об артефактах для поиска. (Хотя мне пришлось настроить некоторые из этих настроек, чтобы полностью проиндексировать наши внутренние снимки.) Я также рекомендую вам развернуть исходную банку с вашими артефактами в качестве стандартной практики, если вы заинтересованы в этом. Мы настраиваем это в супер POM.
UPDATE2: я встретил эту техническую документацию соната, в которой представлены различные этапы усыновления/зрелости, каждый с разными целями использования для менеджера хранилища Maven.