Goal
Мультиконтроллер Maven релиз с бирками на модульустановка релиз Maven с СВН тегов на модуль
Ситуация
Предположим следующую структуру проекта для Maven на основе проекта Java:
xx-parent
xx-moduleA
xx-moduleB
xx-moduleC/submodule1
xx-moduleC/submodule2
xx-moduleC/submodule3
Проектная структура в Subversion выглядит следующим образом:
xx-parent/trunk
xx-moduleA/trunk
xx-moduleB/trunk
xx-moduleC/trunk/submodule1
xx-moduleC/trunk/submodule2
xx-moduleC/trunk/submodule3
Моя цель состоит в том, чтобы создать метки для каждого модуля при выполнении релиз:
xx-parent/tags/xx-parent-1.0
xx-moduleA/tags/xx-moduleA-1.0
xx-moduleB/tags/xx-moduleB-1.0
xx-moduleC/tags/xx-moduleC-1.0
В прошлом каждый модуль был построен и выпущен отдельно. По мере роста проекта (30 модулей) увеличилось время создания выпуска. Я хотел бы сменить проект на мультимодульную установку, чтобы выполнить сборку и выпуск реактора. Построение не кажется проблемой, но создание тегов для каждого модуля.
Плагин maven-release-плагин, похоже, настаивает на создании только одного тега для всего проекта/выпуска. Я ищу способ создания нескольких тегов, например. тег на модуль.
То, что я пытался до сих пор
- Создание хх-все Subversion псевдоним, который проверяет все суб-модулей, так что я могу сослаться на них с
<module>../xx-moduleB</module>
- Включение commitByProject, который сделал фиксации на модуль , но не тег на модуль. См.
- Каждый модуль имеет свои
<scm>
элементы вpom.xml
, но они не используются при исполнении реактора. mvn --batch-mode -DcommitPerProject=true -DautoVersionSubmodules=true -Drelease.version=1.0.6 release:prepare release:perform
Проблемы
- Maven-релиз-плагин не создает Svn тег для каждого модуля
- Maven-релиз-плагин перезаписывает
<scm>
тег с недействительной URL, например вложенное «ствол» -tags под ой-родительского тегом
Вопрос
Как я могу настроить этот проект с процессом выпуска Maven, компоновкой несколько модулей и до сих пор получить отдельные метки на модуль?
Список литературыhttp://jira.codehaus.org/browse/MRELEASE-261 (закрытое) и MRELEASE-561 (Открыть)
+1 очень красиво написано и точно проблема, с которой я сталкиваюсь! Надеюсь, что в последние годы произошло улучшение – avalancha