2017-09-05 49 views
2

我知道maven非常有見地,對於大多數問題總是存在一條最低阻力路徑的答案。在這種情況下是否有一個: 在原始工件被分叉並且groupIdartifactId被更改後,工件版本的標準做法是什麼? 換句話說,這是原來的POM GAV關於項目後叉版本號的Maven最佳做法

<groupId>org.apache.foo</groupId> 
<artifactId>some-project</artifactId> 
<version>2.3.4</version> 

應的版本在我的新POM

<groupId>com.example.bar</groupId> 
<artifactId>some-bar-project</artifactId> 
<version>???</version> 

一方面是什麼,它可能是2.4.0-SNAPSHOT使它清楚地發現叉子發生在2.3.X.問題是,如果原始項目發展,現在有兩個2.4.X,這可能會導致混淆。
另一方面,可以將版本重置爲彷彿是全新的神器,並從1.0.0-SNAPSHOT開始。在這種情況下,有關代碼的來源的信息可以在VCS

的分叉版本進行記錄可能不會被公佈於衆

回答

1

我會雖然避免叉子將是最好的做法,但是如果你想保留原始版本說2.3.4你可以把

<version>2.3.4-1.0</version> <!-- or ---> 
<version>2.3.4_1.0</version> <!-- or ---> 
<version>2.3.4.1.0</version> 

爲了突出這是你1.02.3.4叉。

我用的是什麼

<version>2.3.4a</version> 
<version>2.3.4b</version> 

我會考慮保持Java的packagegroupId.artifactId相同。