假設您已經在使用m2eclipse插件,如果您右鍵單擊Maven項目,則會出現Maven子菜單。m2eclipse中的「更新快照」和「更新依賴關係」有什麼區別?
在這個子菜單中提供的動作中有兩個是:
- 更新依賴
- 更新快照
我發現一個answer,指出「更新快照」等同於使用mvn的-U參數。
如果「更新快照」與mvn -U
相同,那麼「更新依賴項」有什麼作用?
假設您已經在使用m2eclipse插件,如果您右鍵單擊Maven項目,則會出現Maven子菜單。m2eclipse中的「更新快照」和「更新依賴關係」有什麼區別?
在這個子菜單中提供的動作中有兩個是:
我發現一個answer,指出「更新快照」等同於使用mvn的-U參數。
如果「更新快照」與mvn -U
相同,那麼「更新依賴項」有什麼作用?
它很大程度上取決於在您的環境中如何設置快照更新策略。默認情況下,Maven應該每天更新一次快照(因此標記-U和「更新快照」操作來強制快照更新),但是可以在本地或存儲庫管理器級別覆蓋此策略。
「更新相關性」與「更新快照」操作幾乎相同,只是強制更新快照構件。這兩個操作都會重置由M2E創建的內存中項目模型,以跟蹤依賴項,包括來自Eclipse Workspace的依賴項。
快照是依賴項,但使用方式略有不同。具體的依賴關係是使用組,名稱和版本來確定的。這些屬性對於兩個不同的快照可以是相同的。 Maven使用基於內部時間戳的最新快照。
在您不希望更改其版本但希望用戶使用最新版本的項目開發過程中,Shapshots是有益的。
因此......「更新依賴關係」下載您沒有的依賴關係,讓您保留原有的依賴關係,「更新快照」將您的快照更新到最新版本。
我希望這會有所幫助。
這在我的eclipse安裝中不會發生。當我點擊「更新依賴關係」時,我可以看到m2eclipse正在Maven控制檯視圖中下載所有SNAPSHOT依賴項,就像點擊「更新快照」一樣。 – Serxipc 2012-02-27 09:00:58
是的......但是快照和依賴關係是不同的東西,通常是來自不同的回購 – 2012-02-27 21:37:39
我仍然沒有看到區別。 「更新快照」無法執行「更新相關性」更新? – Serxipc 2012-03-21 09:28:25
「更新依賴項」不會覆蓋任何默認策略,因此不會在那裏強制執行。 – 2012-03-21 13:58:14
那麼「更新依賴關係」所做的是清除eclipse M2E項目模型並重新加載。然後,根據更新快照策略,它可能會也可能不會更新存儲庫中的快照。這說得通。 – Serxipc 2012-03-22 11:47:09