我有一個很大的multimodules項目,我想指定Maven的SCM信息。 但是,每個模塊和父項目都在SVN上有一個專用文件夾,所以似乎SCM信息是針對每個模塊的。Maven:SCM和多模塊項目
我需要爲連接和developerConnection元素使用哪個值?我需要爲每個模塊配置SCM還是可以在父項目中配置一次?
由於
我有一個很大的multimodules項目,我想指定Maven的SCM信息。 但是,每個模塊和父項目都在SVN上有一個專用文件夾,所以似乎SCM信息是針對每個模塊的。Maven:SCM和多模塊項目
我需要爲連接和developerConnection元素使用哪個值?我需要爲每個模塊配置SCM還是可以在父項目中配置一次?
由於
我測試兩種方案:
僅在父,聚甲醛級別上定義配置;
在parent-pom和submodule級別定義配置。
如果您在父POM項目嘗試mvn -DdryRun=true release:prepare
,你會得到一個release.properties文件,顯示你,如果它實際上執行的準備目標釋放配置行家會用。
從那裏,你可以看到,當測試第一個場景,maven不會標記子模塊。您只會看到一個project.scm.[groupId]\:[artifactId].url
屬性。 測試第二種方案,並且在子模塊級別完成scm配置,您將爲每個子模塊獲取一個屬性。
我的結論是,對於平面多模塊項目結構,您應該在父級和模塊級別定義scm,每個級別指向該pom所在的scm目錄。