我試圖發佈一個使用git作爲SCM的多模塊maven項目,而我遇到的第一個問題是maven發佈插件的構建方式release.properties scm.url。我父POM看起來是這樣的:使用Git發佈多模塊maven項目
<packaging>pom</packaging>
<groupId>org.project</groupId>
<artifactId>project-parent</artifactId>
<version>1.0.0-SNAPSHOT</version>
<scm>
<connection>scm:git:git://github.com/username/project.git</connection>
<developerConnection>scm:git:[email protected]:username/project.git</developerConnection>
<url>http://github.com/username/project</url>
</scm>
<modules>
<module>api</module>
<module>spi</module>
</modules>
和模塊的POM是直截了當:
<parent>
<groupId>org.project</groupId>
<artifactId>project-parent</artifactId>
<version>1.0.0-SNAPSHOT</version>
</parent>
<artifactId>api</artifactId>
<version>0.2.2</version>
我的目標是能夠釋放單獨的模塊,因爲他們每個人都有不同的版本,我不希望每次發佈時都將所有版本一起增加。
當我更改爲api
目錄,並做了mvn release:clean release:prepare
我會見了以下的輸出:
[INFO] Executing: cmd.exe /X /C "git push [email protected]:username/project.git/api master:master"
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Unable to commit files
Provider message:
The git-push command failed.
Command output:
ERROR: Repository not found.
它看起來像行家發佈插件通過附加模塊名稱爲創建scm.url developerConnection
,它最終不是github上的有效存儲庫。我不知道設置這個的正確方法是什麼。 Maven + git +發佈一個單獨的子模塊可能無法正常工作?任何輸入讚賞。
它看起來像是從頂級POM發佈的項目,而不是像我試圖做的那樣從各個模塊發佈。當我嘗試從其中一個模塊的目錄中釋放時,出現了問題。由於模塊版本不同,我能夠發佈各個模塊對我來說很重要,我不想同時增加所有模塊版本。 –
我從來沒有見過任何人這樣做。 – bmargulies
感謝您的信息。你碰巧有鏈接到maven開發人員名單上討論過這個問題的任何線程嗎? –