我今天發現,在調查一個關於我的項目不可部署的bug時,maven試圖從所有可用的存儲庫加載依賴關係。 我不覺得它明智,特別是關於我們的內部工件,在amven central,Sonatype FlexMojos和其他外部版本庫(特別是當最後一個提供了一個自定義404頁面,maven錯誤地解釋爲有效內容時,我的有效工件與一個無效的)。maven是否有可能不在搜索版本庫中搜索快照?
因此,是否有可能告訴maven哪些存儲庫查找SNAPSHOT工件,以及查找哪些RELEASE工件?
我今天發現,在調查一個關於我的項目不可部署的bug時,maven試圖從所有可用的存儲庫加載依賴關係。 我不覺得它明智,特別是關於我們的內部工件,在amven central,Sonatype FlexMojos和其他外部版本庫(特別是當最後一個提供了一個自定義404頁面,maven錯誤地解釋爲有效內容時,我的有效工件與一個無效的)。maven是否有可能不在搜索版本庫中搜索快照?
因此,是否有可能告訴maven哪些存儲庫查找SNAPSHOT工件,以及查找哪些RELEASE工件?
如果您明確表示不要在您的回購庫中查找快照,會有幫助嗎?
<repositories>
<repository>
<id>central</id>
<name>Maven Repository Switchboard</name>
<layout>default</layout>
<url>http://repo1.maven.org/maven2</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
我的解決方案是在Intranet中設置存儲庫鏡像。這樣,Maven需要知道一個URL來下載一切。
然後,我使用內部鏡像捆綁存儲庫(本地和遠程)。如果快照回放首先位於搜索路徑中,則鏡像服務器幾乎不會發布我內部構件的名稱(僅當我忘記部署它們時)。
最重要的是,它將減少團隊其他成員的下載時間,並確保每個人即使在您的控制之外還存在網絡問題時仍可以繼續工作。