2015-06-08 3 views
0

У нас есть Nexus установить, что имеет набор часто используемых зависимостей Java (Викисклада кодеком, jodatime и т.д.)Локальный репозиторий Nexus Maven для общих библиотек ява

Структура каталогов аналогична ниже

commonjavalibraries 
| 
|_ commons-codec 
| |_commons-codec 
| |_1.2 
|_ commons-compress 
    |_commons-compress 
    |_1.3 

Я в процессе добавления последней версии этих зависимостей в репозиторий.

Для этого я создал новое управление настройками pom и setup для развертывания в Nexus.

Однако теперь я знаю, что атрибуты groupId: artifactId: version для pom определяют, как проект развертывается в nexus. Я думаю, это означало бы, что для каждого элемента группы понадобится отдельный pom.

Как управляется центральный репозиторий? Я понимаю, что можно проксировать центральный репозиторий, к сожалению, наша сеть не позволяет загружать банку, следовательно, необходимость в размещенном хранилище commonjavalibraries в первую очередь.

Есть ли способ сделать то, что я пытаюсь достичь, не создавая помпе для каждого элемента группы?

+0

Не можете ли вы запросить у вашего ИТ-отдела список белых URL-адресов, с которыми можно подключиться к серверу nexus? Поэтому вы можете просто настроить его как прокси-сервер, иначе у вас будет много работы по развертыванию всех этих зависимостей. –

+0

Ну, это не совсем клон центрального, но все еще много зависимостей. Кроме того, оборонная промышленность так не на самом деле :( – PDStat

+0

Я думаю, что никогда не пойму, насколько параноиками могут быть некоторые люди. Какая разница, с точки зрения безопасности, между a) _whitelist 'commons-codec'on Maven Central для Nexus_ → _let Nexus загрузите его автоматически_ и b) _whitelist 'commons-codec'on Maven Central для загрузчика_ _ _загрузить его вручную_ _ _грузить его в Nexus вручную. Или как еще вы получаете файлы артефактов? С бронированной машиной прямо из Apache? –

ответ

0

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

Я написал сценарий Python, чтобы скопировать их в другое место, а затем пройти это дерево каталогов и запустить mvn deploy:deploy-file для каждой пары jar/pom, с которой я столкнулся.

Смежные вопросы