2011-12-06 150 views
0

所以我有兩個我控制的maven項目。一個取決於另一個,說webapp取決於jar庫。我試圖設置連續部署,所以我有Web應用程序取決於JNA庫的SNAPSHOT版本。現在,當我將代碼簽入jar並推送到git服務器時,webapp會很好地構建。我已經在git服務器上設置了一個post-receive hook來觸發jenkins中的jar lib構建。jenkins git maven發佈

現在,我想有一個單步(點擊按鈕)過程將做到以下幾點:

承擔首發的POM的在他們以下幾點:

<artifactId>jarlib</artifactId> 
<versionId>0.0.1-SNAPSHOT</versionId> 

<artifactId>webapp</artifactId> 
<versionId>0.0.1-SNAPSHOT</versionId> 
... 
<dependency> 
    <artifactId>jarlib</artifactId> 
    <versionId>0.0.1-SNAPSHOT</versionId> 
... 

我想要發佈兩個工件webapp:0.0.1和jarlib:0.0.1。我想的勁歌現在的樣子:

<artifactId>jarlib</artifactId> 
<versionId>0.0.2-SNAPSHOT</versionId> 

<artifactId>webapp</artifactId> 
<versionId>0.0.2-SNAPSHOT</versionId> 
... 
<dependency> 
    <artifactId>jarlib</artifactId> 
    <versionId>0.0.2-SNAPSHOT</versionId> 
... 

回答

0

您應該使用maven release plugin。這非常符合你的需求。一些步驟是互動的,但我想這是詹金斯的M2 Release Plugin照顧。

+0

這不起作用。如果您有快照依賴關係,則無法創建發行版。我在尋找的東西會認識到我的快照依賴關係也是在同一個jenkins實例內部管理的,並且它們也應該被釋放。合理? – ftravers

+0

@ftravers。你的問題表示你想釋放'webapp:0.0.1'和​​'jarlib:0.0.1.'沒有提到'SNAPSHOT'。我不是千里眼:) – Raghuram