2014-10-20 146 views
0

我已經繼承了一些maven項目,它們添加了一個/dependencies目錄來捕獲不屬於項目戰爭並且必須由DevOps安裝到Tomcat安裝中的Java jar庫。確定Maven提供的依賴關係

此目錄中的庫似乎分爲四類:

  1. 「設置」範圍庫,
  2. 那些提供的庫的下游的依賴關係,並
  3. API罐子的發現實現
  4. 「神祕」圖書館,即在外部存儲庫中不可用,並且可能不確定他們來自哪裏。

是否有一種策略讓Maven幫助管理這些依賴關係,並且可能將它們提取爲外部安裝?

回答

0

可能有幾種策略可供選擇。

第一:保持原樣。如果它有效並且構建可重現(在不同的環境中),這似乎是一種有效的解決方案。

對於使用它的新人來說,構建的「神祕」部分可能不是什麼問題。

我認爲創建一個自己的maven模塊以交付給基礎架構團隊是有效的。該模塊可以包含/dependencies文件夾中的罐子。 你需要做的是創建一個pom.xml並添加當前目錄中的所有依賴項(當然不是可傳遞的依賴項)。神奇的需要進入資源庫代理(nexus,artifactory,...)。如果你還沒有Maven倉庫:你想要一個! (它很容易設置,它確實有很大的幫助!)

然後我會使用程序集插件或一些ant任務來構建壓縮文件。因此,基礎架構團隊只需將文件解壓縮/複製到需要的位置即可。這一步甚至可以編寫腳本(所以上傳/解壓縮通過SSH或類似的東西來完成)。

這可能只是一種方法。我會假設解決在/ dependencies目錄中的jar可能有點痛苦。

這樣做的好處顯而易見,您可以記錄並簡化這些庫的管理。我也會假設你更新了一些分支,因爲沒有二進制文件,所以分支合併更容易。所以這可能是值得的。