2015-11-13 79 views
1

我正在使用mvn構建一個版本,並且似乎弄清了一些事情。這是我做的:mvn發佈:準備失敗清理

mvn release:prepare -Darguments="-DskipTests=true" -DautoversionSubmodules=true -Dpassword=... -Dusername=... 

並且由於密碼不正確而失敗。

誤我做了

mvn release:clean 

然後吹散了我的備份阻止我現在在做正確的事情,一個

mvn release:rollback. 

這失敗,出現錯誤說,它不能從備份中恢復。

有沒有辦法告訴mvn剛剛開始構建此版本?

回答

1

當您(錯誤地)調用mvn release:clean時,項目的所有中間備份文件都被刪除,因此Maven無法回滾到初始狀態(僅僅因爲它不知道初始狀態是什麼了)。

您沒有太多選擇:您需要自行恢復初始狀態。這意味着:

  • 恢復項目版本。這可以通過手動或在versions-maven-plugin:set插件目標的幫助下完成。
  • 恢復POM的<scm>元素。
  • 恢復您可能擁有的任何SNAPSHOT依賴關係(例如,在多模塊Maven項目的模塊之間)。這也意味着在多模塊項目的情況下更新<parent>元素。

既然您說由於密碼不正確而導致發佈失敗,我認爲它在SCM認證期間失敗。在這種情況下,您不需要刪除該版本應創建的標籤。

由於沒有備份,所以在您下次調用maven-release-plugin時,它將從頭開始新版本。

並記住未來:想你才能輸入

+0

謝謝,這些信息足以讓我回到起點。 –