2011-12-07 105 views
5

我有一個很大的multimodules項目,我想指定Maven的SCM信息。 但是,每個模塊和父項目都在SVN上有一個專用文件夾,所以似乎SCM信息是針對每個模塊的。Maven:SCM和多模塊項目

我需要爲連接和developerConnection元素使用哪個值?我需要爲每個模塊配置SCM還是可以在父項目中配置一次?

由於

回答

5

我測試兩種方案:

  • 僅在父,聚甲醛級別上定義配置;

  • 在parent-pom和submodule級別定義配置。

如果您在父POM項目嘗試mvn -DdryRun=true release:prepare,你會得到一個release.properties文件,顯示你,如果它實際上執行的準備目標釋放配置行家會用。

從那裏,你可以看到,當測試第一個場景,maven不會標記子模塊。您只會看到一個project.scm.[groupId]\:[artifactId].url屬性。 測試第二種方案,並且在子模塊級別完成scm配置,您將爲每個子模塊獲取一個屬性。

我的結論是,對於平面多模塊項目結構,您應該在父級和模塊級別定義scm,每個級別指向該pom所在的scm目錄。