Как построить экспорт исходного кода maven с зависимостями для выпусков условного депонирования
Нам необходимо периодически предоставлять выпуски исходного кода для некоторых клиентов (хранится на условном депонировании третьей стороной).
Это должно включать в себя:
- Основной maven модуль (или многомодульный) исходный код
- Исходный код для всех зависимых модулей maven, где он доступен в нашем хранилище исходного кода
- Двоичные файлы для всех других зависимых модулей (например, сторонние внешние библиотеки).
- любые другие ивенские иждивенцы, например, родители.
В идеале это должен быть автоматизированный процесс. В настоящее время мы не храним исходные файлы jar в нашем репозитории maven и предпочли бы использовать теги scm в poms и получить исходный код из репозитория svn.
mvn scm:export
хорошо работает для отдельных модулей. Если бы мы могли как-то совместить это с плагином maven-dependency-plugin (и убедиться, что в него включены родительские помпы!), Это, вероятно, сделало бы большую часть того, что нам нужно. Кто-нибудь знает простой способ сделать это?
1 ответ
Я бы предложил также развернуть исходные пакеты в репозитории maven во время выпуска. После этого вы можете извлечь зависимости вашего проекта из вашего менеджера хранилища и упаковать его в набор условного депонирования. Это может быть выполнено отдельным проектом maven, который содержит все проекты, которые вам нужно упаковать как зависимости, и использовать сборочный плагин, чтобы упаковать его в zip-архив, в том числе. исходные пакеты.