不幸的是你,如果你改變重建你的神器釋放15-20文物任何其他建議您pom文件。否則,您的VCS中的狀態並不代表您正在使用的狀態。
讓我們做出了榜樣。項目A,項目B上的一個其中B dependends:
項目A:pom.xml的
<version>1.0-SNAPSHOT</version>
Some dependencies etc.
項目B:pom.xml的
<version>1.0-SNAPSHOT</version>
Some dependencies etc.
<dependency>
<groupId>project.a</groupId>
<artifactId>A</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
現在你建立項目A和B.你的倉庫中的狀態代表着狀態/依賴於SNAPSHOT的pom文件的狀態。
現在您將更改項目A以使其「釋放」,但您不重建您的工件。以下是你的版本控制,可能是你做了一個標籤。
項目A:pom.xml的
<version>1.0</version>
Some dependencies etc.
其次你做同樣的項目B: 項目B:pom.xml的
<version>1.0</version>
Some dependencies etc.
<dependency>
<groupId>project.a</groupId>
<artifactId>A</artifactId>
<version>1.0</version>
</dependency>
但是你也不重建aritfact。結果是您的存儲庫確實包含代表SNAPSHOT狀態的工件,但是您的版本控制表示不同的東西。這只是問題的一個非常簡單的例子。如果你有更多的項目等,事情會變得更糟。
此外,我會recosinder考慮改變項目結構,原因根據你寫的依賴關係,它看起來像項目應該一起發佈,所以它可能是一個好主意,創建一個多模塊構建他們。
此外,重建可以通過在Jenkins中使用適當的作業來完成,它可以處理依賴性,或者您可以考慮使用build pipeline plugin來處理這樣的事情。
但我還有一個疑問:爲什麼你的構建需要這麼長時間?你可以調查他們爲什麼要花這麼長時間,並減少釋放時間。
非常感謝您的回覆。我將盡快詳細闡述這個問題和我們提出的解決方案。我想我沒有清楚地解釋這個問題。但是你是正確的,我們將需要重建神器。我會盡快更新你的。再次感謝。 – user971652