2012-08-22 61 views
7

我試圖分叉一個已經在主存儲庫中的已停用的maven庫。如何正確地分叉一個Maven項目?

這樣做的時候遵循的指導方針是什麼?

應該更改groupId/artifactId,以便它不會與已存在於maven存儲庫中的庫發生衝突?

這個庫將是一個項目的依賴項,也將公開發布(在maven倉庫中),所以這個庫也應該在那裏。

這些修改增加了對庫的工作方式的改進和一些更改,所以我希望它與舊版本分開。

+0

的可能重複[使用何種版本的標籤分叉Maven項目?( http://stackoverflow.com/questions/10415550/what-version-label-to-use-for-a-forked-maven-project) – javabrett

回答

3

我假設你正在分岔另一個項目供內部使用?然後我會保留原始的groupId/artifactId,但是爲該版本添加一個後綴。如果上游版本是1.0.0,則您的自定義版本將爲1.0.0-custom。

如果你創建一個公共分支,那麼你基本上必須使用一個新的項目名稱,所以新的groupId/artifactId。

+0

我會建議以一種特殊的版本字符串相同的方式。 – khmarbaise

+0

不,該項目將被髮布到主Maven倉庫。我不知道,但我猜如果我不改變groupId,新圖書館將會與舊圖書館發生衝突。也許我也應該添加一個後綴到artifactId。 –

+0

最好使用'1.0.0.custom'而不是'1.0.0-custom',否則Maven可能會混淆分類器。 – artbristol

8

Sonatype recommends當您分叉項目時更改groupId

B2)上傳到在你的分叉項目 的groupId(大概是一個你自己的和適當的叉)

相關問題