У меня есть некоторые зависимости от Центрального репозитория Maven в моем проекте. Поэтому я подумал, что, если какая-либо зависимость будет удалена из Maven Central и других репозиториев (GitHub), и я не смогу найти эту зависимость где-нибудь и построить свой проект?
Я хочу добавить локальный кэш зависимостей в git-репозиторий моего проекта, чтобы каждый мог клонировать этот репозиторий и строить мой проект в автономном режиме. Может быть, в Cocoapods. Как я могу это сделать?
В корпоративной среде вы будете использовать диспетчер хранилища, такой как Archiva, Artifactory или Nexus. Вы можете настроить эти инструменты для работы в качестве прокси для публичных репозиториев, чтобы все необходимые артефакты были кэшированы по требованию.
Эти инструменты устанавливаются на сервер, чтобы каждый разработчик мог получить к ним доступ, и сборка настроена таким образом, чтобы иметь только этот репозиторий, чтобы все артефакты были кэшированы, если они еще не доступны в кеше. Там страница в Codehaus сравнивает вышеупомянутые инструменты.
Если менеджер репозитория слишком много для вас, вам нужно самостоятельно управлять локальным репозитаром.
У вас уже есть локальный repositories
maven, добавьте mavenLocal()
в раздел repositories
проектов. Я сомневаюсь, что какая-либо зависимость от maven или других публичных размещенных репозиториев может быть удалена, но лучший способ предотвратить это из-за этого - разместить собственный repo- artifactory
например. Другим способом является добавление всех зависимостей в систему управления версиями и настройка gradle
для чтения зависимостей из плоского репозитория файлов. Вот целая глава о репозиториях в документах gradle.