我們有三個神器:Maven的WAR覆蓋問題,同時使用哈德森+ Artifactory的
common.jar : with common classes.
public.war : depending on the common.jar, contains only public site resources.
internal.war : depends on both common.jar and public.war, adding authentication
information and security context resource files. Also contains
few administration site classes.
目前我已經在這樣的方式構建這些,那internal.war overlays本身public.war。
在本地構建項目,將工件安裝到本地回購,完美地工作。
- 構建所有項目的依賴順序:試圖讓哈德森建立工作與依照以下順序
問題開始。
- 修改common.jar(例如,添加一個新的類方法)
- 修改internal.war類,使得它們在編譯時依賴於步驟2中完成的更改。
- 提交這兩個更改,觸發Hudson構建。因爲它無法找到在步驟2中
不知怎的,構建步驟5中添加的符號是使用舊版本的common.jar的,因爲它沒有
common.jar版本號不會改變,假設它是1.0.0-SNAPSHOT用於本示例。
如果我改變了common.jar的版本號,這個版本就可以工作。 (據推測,因爲發佈版本號只有一個版本)。
現在,什麼可能會導致這種使用哈德遜舊工件的構建?
我們正在運行的Maven建立在哈德森命令「清包-e -X -U」
「部署文物,Maven倉庫」已被選中。
只是爲了確定,你的意思是詹金斯還是哈德森? – noamt 2012-02-08 13:38:21