2009-05-01 8 views
2

在我工作的開發車間,我們有一個內部MAVEN存儲庫,以保持我們的庫(專有&開放源代碼)。我們面臨的一個常見問題是,有時候,我們本地MAVEN存儲庫中的開源庫已經過時。有沒有一種自動的方式來保持我在我的MAVEN資源庫中使用的所有開源庫永遠更新?你有什麼建議來解決這個問題?如何在MAVEN中更新庫?

回答

1

的一個問題,假設您:

  • 不想下載的一切
  • 不想再跑服務器 過程
  • 只想跟蹤數量有限 的項目

您可能想要創建一個單獨的pom.xml文件,其中包含如下依賴關係:

<dependency> 
    <groupId>org.openfoo</groupId> 
    <artifactId>jfoo</artifactId> 
    <version>[1.0.0,2.0.0)</version> 
</dependency> 

這會告訴Maven來使用jfoo 1.0.0高達jfoo 2.0.0所以當jfoo發佈版本1.2.17,你會獲取在未來構建假設你的設置都設置檢查版本每一次。

這個pom並不需要真正建立任何東西。只需列出你想跟蹤的事物。

運行:

cd the-path-to-the-project; mvn -q -B -U package 

通過cron一天一次更新將在POM,僅報告所有的依賴時,有一個問題

順便說一句,這是一個黑客。如果開發人員的數量大於3,並且您有足夠的資源來運行連接,請不要打擾。

4

Archiva已被提及,但nexus似乎更受歡迎。兩人都被設計用於解決像你有

+0

我想第二個連結點。 Sonatype比任何人都更瞭解Maven,並且製作了一款非常棒的產品。我不會稱之爲輕量級的,但它的安裝非常簡單並且使用起來非常棒。 – sal 2009-05-01 16:57:31

+0

我也會爲Nexus投票。它的污垢設置簡單。 – BobBrez 2010-10-01 02:20:42