У меня есть проект с закрытым исходным кодом, который я хотел бы построить с помощью Maven. Он имеет зависимость от двух java-библиотек, которые недоступны в любом публичном репозитории, который я смог найти (libGoogleAnalytics.jar и FlurryAgent.jar в этом случае, но вопрос относится к любой зависимой от закрытого источника).
Я хочу, чтобы кто-либо из моей организации смог создать приложение, используя те же самые версии зависимостей, которые я использую для создания приложения. Сюда входят мои коллеги и наш сервер сборки.
Как управлять зависимостями с закрытым исходным кодом, которые maven не знает, как разрешить?
Очевидно, я мог бы пойти на машину каждого человека и вручную выполнить "mvn install: install-file", чтобы получить двоичный файл в своем репозитории maven, но ручное управление зависимостями, как это, нарушает назначение менеджера зависимостей.
В соответствии с maven Внутренние репозитории, я мог бы где-то настроить сервер репозитория и поместить туда двоичные файлы, которые затем будут доступны всем разработчикам, Но это означает, что у меня есть новый сервер для поддержки (или, по крайней мере, нового веб-сайта на существующем сервере). Это также означает, что я должен беспокоиться о разрешении, чтобы внешние сторонцы не могли получить доступ к репозиторию. Это также означает, что теперь я должен беспокоиться о резервных копиях и доступности, чтобы разработчики не запускались в hiccoughs, если репозиторий недоступен.
Все эти проблемы исчезнут для меня, если я смогу каким-то образом использовать наш существующий scm (hg в этом случае, но это может быть git или svn или что-то еще) для хранения зависимостей. Наш исходный репозиторий управления резервным копированием уже создан, он будет в основном всегда доступен разработчикам, выполняющим сборки, и его разрешения уже разрешены.
Но мне еще не удалось выяснить, как управлять зависимостями maven с помощью hg, если это возможно.