2009-09-13 32 views
7

我的問題是maven是如果Maven存儲庫沒有響應,則無法構建。它似乎將每個「mvn軟件包」時間取回一些poms,這些poms不會改變,因爲它們的版本相同。如何強制Maven下載poms以供離線使用

如何向maven表示請不要從服務器上查找它們,而是將它們永久下載到離線存儲庫?

謝謝!

回答

11

您可以運行與-o標誌行家:

-o,--offline       Work offline 

這將導致Maven來從來不看在遠程存儲庫的依賴關係。另一方面,如果在本地存儲庫中找不到依賴項,則構建將失敗。

11

您可以配置存儲庫以僅偶爾檢查更新,或者永遠不要在存儲庫聲明中設置updatePolicy元素。從settings documentation

下載更新的頻率 - 可以是「總是」,「經常」(默認),「間隔:XXX」(以分鐘爲單位)或「從不」(僅當它不存在本地)。

添加以下到您的POM或設置將配置中央存儲庫,如果工件不存在於本地只下載:

<repositories> 
    <repository> 
    <id>central</id> 
    <releases> 
     <updatePolicy>never</updatePolicy> 
    </releases> 
    </repository> 
</repositories> 

如果有問題的資料庫是一個內部遠程存儲庫,您需要確保遠程存儲庫中的maven-metadata.xml是configured correctly,否則Maven會每次嘗試下載它。要做到這一點,最簡單的方法是使用一個repository manager將管理元數據自動

相關問題