Использование зависимостей с закрытым исходным кодом с Maven

У меня есть проект с закрытым исходным кодом, который я хотел бы построить с помощью Maven. Он имеет зависимость от двух java-библиотек, которые недоступны ни в одном публичном репозитории, который я ' мне удалось найти (в данном случае libGoogleAnalytics.jar и FlurryAgent.jar, но вопрос относится к любой зависимости с закрытым исходным кодом).

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


Как мне управлять зависимостями с закрытым исходным кодом, которые maven не знает, как разрешить?

Очевидно, я мог бы пойти на компьютер каждого человека и вручную выполнить «mvn install: install-file ", чтобы получить двоичный файл в свой репозиторий maven, но ручное управление зависимостями, подобными этому, не дает возможности диспетчеру зависимостей.

Согласно документации maven Internal Repositories , я мог бы настроить сервер репозитория куда-нибудь и поместите туда бинарники, к которому затем получат доступ все разработчики. Но это означает, что мне нужно поддерживать новый сервер (или, по крайней мере, новый веб-сайт на существующем сервере). Это также означает, что мне нужно беспокоиться о разрешениях, чтобы посторонние лица не могли получить доступ к репозиторию. Это также означает, что мне нужно беспокоиться о резервных копиях и доступности сейчас, чтобы разработчики не заикались, если репозиторий недоступен.

Все эти проблемы исчезли бы для меня, если бы я мог каким-то образом использовать наш существующий scm (hg in в этом случае, но это может быть git, svn или что-то еще) для хранения зависимостей. Наш репозиторий системы контроля версий уже зарезервирован, в основном он всегда будет доступен разработчикам, выполняющим сборки, и его разрешения уже рассмотрены.

Но я еще не смог понять, как управлять зависимостями maven с помощью hg , если это вообще возможно.

10
задан emmby 10 February 2011 в 16:15
поделиться