目標
多模塊的Maven版本,每個模塊標記Maven的發佈設置,每個模塊SVN標籤
形勢
假設以下的項目結構爲一個基於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-plugin似乎堅持只爲整個項目/版本製作一個標籤。我正在尋找創建多個標籤的方法,例如每個模塊的標籤。
我已經試過到目前爲止
- 創建XX-所有顛覆別名,檢查出所有的子模塊,這樣我就可以
<module>../xx-moduleB</module>
- 啓用commitByProject引用它們,這並每個模塊承諾,但不是每個模塊的標籤。請參閱
- 每個模塊在
pom.xml
中都有自己的<scm>
元素,但在執行反應堆版本時不會使用它們。 mvn --batch-mode -DcommitPerProject=true -DautoVersionSubmodules=true -Drelease.version=1.0.6 release:prepare release:perform
- 行家離型插件不創建每個模塊一個svn標籤
- 行家-釋放插件覆蓋
<scm>
標籤無效網址,例如在XX-父標籤
問題在嵌套的「主幹」標籤都有效
我如何設置這個項目,Maven的釋放過程,多模塊的佈局,仍然可以得到每個模塊獨立的標籤?
參考http://jira.codehaus.org/browse/MRELEASE-261(閉合)和MRELEASE-561(開放)
+1非常好寫,正是我遇到的問題!希望過去幾年有所改善 – avalancha 2014-11-11 13:42:11