2011-09-05 48 views
0

我正在將遺留Ant項目轉換爲Maven項目。該項目的一部分是一個非常大的(〜1.6GB)壓縮二進制格式的數據文件,它們通過索引表以隨機查找的方式訪問。數據文件就像對數函數表,彩虹表或用於大量縮減複雜計算的類似數據表。用maven項目打包大量頻繁更改的數據文件

我們每週發佈新的數據表,我希望能夠利用Maven的依賴管理系統來幫助開發人員獲得最新的表格。

我遇到的主要問題是我無法弄清楚如何將表格打包成不僅僅是整個系列的JAR,ZIP或RAR。有沒有辦法編寫一個會導致數據文件目錄的pom?或者我只是以非Maven的方式來思考問題?

感謝您的任何建議。

回答

0

這取決於消費者可以處理什麼。 Maven依賴關係不處理文件目錄,所以你需要整個工件。您可能想要處理ZIP,因爲JAR具有重載意義(放在classpath上),而其他壓縮需要自定義插件。但是,如果您可以將其分解爲長壽命和短壽命的數據,則可能會獲得更好的行爲(例如,每季度完整版本以及適用於每週重新發布的一組更改)。這取決於能否以這種方式輕鬆拆分數據,或者以某種方式覆蓋或修補數據。這在壓縮二進制文件中可能很困難。

另一種選擇是不斷建立大的神器,並丟棄舊的。這依賴於構建和存儲庫之間的良好帶寬,以及足夠的磁盤來保存儘可能多的構建(如果合適的話,像Archiva這樣的存儲庫管理員可以定期清理舊構建)。

最後一個注意事項 - 如果您使用的是超過2G的ZIP(您即將接近),則需要使用不同的ZIP,例如truezip-maven-plugin。

+0

謝謝你的建議;當你最初給出這個解釋時,我對maven瞭解得不夠了解。我現在使用程序集插件來壓縮數據文件,然後使用二次裝配步驟將其集成到發佈項目中。 –