當我正在開發時,我經常需要更改依賴項,但我還沒準備好部署我的更改。例如,我正在研究項目Foo,並且我意識到我需要爲公共庫添加一個方法。在將此更改部署到我們的內部存儲庫之前,我想將更改安裝到公共庫(mvn install
)並重新編譯Foo以使用本地存儲庫中的通用庫(請注意,我正在使用所有SNAPSHOT版本)。爲什麼maven在我的本地存儲庫之前使用我的內部存儲庫?
但是,在我使用我的通用庫之後,當我重新編譯Foo時,它不使用新的通用庫 - 它在內部存儲庫中始終使用最新的SNAPSHOT通用庫。如果我部署已更改的通用庫,Foo會立即採用它。
如何讓maven先查看本地存儲庫?
更新:當文件安裝到本地存儲庫時,它會得到一個名稱,如foo-1.0.0-SNAPSHOT.jar
,但是當我部署它時,它會得到一個時間戳foo-1.0.0-20111104.191316-23.jar
。我認爲這就是爲什麼遠程神器每次都被拉動的原因。任何想法爲什麼mvn install
不像mvn deploy
那樣工作?這是否與我爲快速部署設置了快照庫有關?
你的[settings.xml](http://maven.apache.org/settings.html)中是否有一個localRepository指向一個不存在的位置? – millhouse
將您的系統日期與您的內部回購(例如Nexus)系統的日期進行比較。如果還有很長的路要走,它的時間戳將會「贏」 – millhouse