哪裏是指定maven項目所需儲存庫的最佳位置,pom.xml
或settings.xml
?每個地點有什麼優點和缺點?什麼是最佳做法?哪裏是指定maven倉庫,pom.xml或settings.xml的最佳位置?
在我看來,在POM定義庫是有很多原因更好:
- 重複性:從屬文物是從在POM顯式聲明的已知位置來。用戶配置不當的存儲庫導致問題的機會也較少。
- 可移植性:此POM將建立在安裝了maven的任何人的機器上。對額外的用戶配置的存儲庫設置沒有額外的要求。
- 易用性:新開發人員更容易檢索和構建項目,因爲安裝的配置較少。
也許一個反面的是,如果在未來的存儲庫的位置發生變化,需要安裝或舊的軟件補丁發佈需要被釋放指定新的存儲庫位置代理(或.m2/settings.xml
可以隨時提供額外的存儲庫作爲最後的手段)。但是,這似乎是發佈管理中良好的可重複性和可移植性的必要分支,而不是一個騙局。
還有其他想法嗎?
如果回購庫位發生變化,您只需更新pom並確保每個人都刷新其本地副本。 – 2010-02-08 23:09:20
正確,但舊版本可能已作爲發行版發佈(例如:zip,tar.gz)。重現性的一個好處是您可以採取任何分配/版本,無論出於何種原因應用補丁,並且您都可以獲得確切的功能分佈以及補丁,而無需其他任何補丁。 – jnorris 2010-02-08 23:13:34
我的意見與@jnorris完全一致,但Sonatype提供了一些要考慮的問題(可能過時了?):關於將URL保留在分佈式POM文件中:http://blog.sonatype.com/2009/02/why-putting-repositories-in - 你的poms是一個壞主意/ – chrisinmtown 2017-12-26 16:30:52