У меня есть проект с большим количеством зависимостей во многих удаленных репозиториях, и даже для этих зависимостей иногда требуются другие удаленные репозитории.
Я хочу создать стабильную среду сборки и хочу, чтобы моя локальная установка Nexus была прокси все требования проекта, так что я могу воспроизвести сборки, не выходя в интернет после того, как все настроил один раз.
Т.е. мой .m2/settings.xml
будет содержать:
<mirrors>
<mirror>
<id>my.public</id>
<url>http://localhost:8081/nexus/content/groups/public</url>
<mirrorOf>*</mirrorOf>
</mirror>
</mirrors>
Но, конечно, этого недостаточно.Nexus не будет произвольно использовать прокси-сервер для каждого запроса, который он получает от моей установки maven.
В настоящее время, насколько я понимаю, и вот как я его получил, для каждого удаленного хранилища, с которым я сталкиваюсь, я создаю прокси в Nexus идобавьте его в публичную группу.
В моем случае это 15 или 20 удаленных репозиториев.Большинство из них - дальнейшая зависимость от моих пакетов, то есть не очевидно, что они мне нужны, пока я не запустил сборку maven и не нажал на них .До сих пор я обнаружил, что на них в основном ссылаются в родительских POM.
Мой вопрос: есть ли способ как-то настроить Nexus, чтобы мне не нужно было добавлять каждый репозиторий вручную?
Когда я перечитываю свой вопрос, почти звучит, что я хочу настоящий HTTP-прокси, но какой тогда смысл в Nexus?Конечно, это риторический вопрос, но как мне решить эту проблему, не добавляя их все вручную?
Все, что я нашел в документации Nexus, это http://www.sonatype.com/books/nexus-book/reference/config-sect-custom.html:
...Вы можете столкнуться с проектами, которые не могут получить артефакты из вашей локальной установки Nexus
и
... добавить этот репозиторий в Nexus в качестве нового прокси-репозитория, а затемдобавить новый репозиторий в публичную группу