2012-04-06 85 views

回答

23

當您從遠程存儲庫檢索所有依賴關係時,本地回購就變成了緩存。

像所有的緩存一樣,Maven本地倉庫偶爾會變得「髒」。在一個公認的偏執和矯枉過正的行爲中,我安排了一個週期性的cron作業來清除我的構建機器上的本地存儲庫。這會強制與我的Nexus Maven存儲庫重新同步。

+0

好的解釋和感謝關於強制重新同步的額外提示。 – twigmac 2012-04-07 10:07:06

+0

爲什麼不簡單地使用mvn -U(update)來強制檢查更新? – imagineerThat 2015-03-20 17:09:35

+0

@imagineerThat當然,但緩存重置確保構建完全清潔。當依賴關係也在本地緩存在Maven資源庫中時,花費不大。 – 2015-03-20 20:01:24

13

如果您可以通過遠程回購訪問所有需要的工件,那麼移除本地Maven存儲庫總是安全的。下一次構建所需的所有工件,包括基本的Maven插件(如編譯器)都將基本上從遠程倉庫獲取。而已。

+1

謝謝你的回答。是我需要知道的! – twigmac 2012-04-07 10:09:54

2

你可以做的是添加一個cron條目來定期刪除本地存儲庫中的文件,例如90天。

find ~/.m2/ -type f -atime +90 -delete && \ 
    find ~/.m2/ -type d -empty -delete 

這使您的緩存大小降低到只有您最近使用的工件。