Невозможно использовать Apache Archiva в качестве зеркала
Я думаю, что это должно было быть простой задачей, но я не смог ее выполнить.
Я установил архивное хранилище так:
- 2 внутренних репозитория Maven1 (старые проекты)
- 1 Внутренний репозиторий Maven2
- 7 удаленных репозиториев (центральный, java.net, jboss.org и т. Д.)
Для каждого внутреннего репо я создал прокси-соединение с каждым удаленным репо.
Я добавил новое зеркало в файл settings.xml, как описано в документации к архиву:
<mirror>
<id>archiva.default</id>
<url>http://repo.mycompany.com:8080/archiva/repository/internal/</url>
<mirrorOf>*</mirrorOf>
</mirror>
Когда я пытаюсь создать простой проект с одной зависимостью из некоторых удаленных репозиториев, никакие артефакты не загружаются. Зачем?!?
Спасибо за любую помощь.
2 ответа
Archiva не назначает репозиториям никаких специальных ролей. Вы делаете запросы в определенный управляемый репозиторий из Maven (так из ваших настроек, internal
), и он будет обслуживать то, что находится там, или прокси-сервер из удаленных репозиториев, которые были подключены через прокси-коннектор. По умолчанию это просто Central - добавление нового удаленного хранилища не имеет никакого эффекта, пока оно не будет подключено к управляемому хранилищу через прокси-коннектор.
Что вы, вероятно, хотите сделать, это добавить прокси-коннектор на внутреннем репо в рассматриваемые удаленные репозитории. Попробуйте также настроить белый список, чтобы он был более эффективным.
Вы также можете настроить группу репозиториев, которая охватывает все управляемые репозитории (как maven 1, так и maven 2) для использования из одного URL-адреса.
У меня была точно такая же проблема с Archiva 2, для меня решение было предоставить роль "Global Repository Observer" пользователю "Гость".