2014-02-19 39 views
0

在日食時,我建我得到以下警告:爲什麼m2e沒有從nexus找到我的一些快照依賴關係?

2/18/14, 4:30:35 PM MST: [INFO] Using org.maven.ide.eclipse.wtp.WarLifecycleMapping lifecycle mapping for MavenProject: com.foo:bar:14.4.19-SNAPSHOT @ C:\dev\code\apps\iv\pom.xml. 
2/18/14, 4:30:35 PM MST: [WARN] The POM for com.foo.libraries:s2j:jar:1.0.3-SNAPSHOT is missing, no dependency information available 
2/18/14, 4:30:35 PM MST: [WARN] The POM for com.foo.libraries:caching:jar:1.0.1-SNAPSHOT is missing, no dependency information available 
2/18/14, 4:30:35 PM MST: [WARN] The POM for com.foo.libraries:email:jar:1.0.1-SNAPSHOT is missing, no dependency information available 
... 

等。編譯沒有完成,我無法在目標目錄中獲得比m2e-wtp/web-resources文件夾更多的內容。

當我從命令行構建時,沒有問題,這些工件被發現很好。他們當然在我的本地存儲庫中,爲什麼會發生這種情況?

從實驗的一些進一步的細節:

刪除我的本地庫,並在Eclipse重建下載了一些文物,但導致更多的文物不被發現(我原本5件人失蹤文物,現在我有7)。那些未找到的不是從Nexus下載的。

在上述實驗中刪除了存儲庫之後,我從命令行生成了這些文件,並將那些列爲缺失的工件下載並構建成功。但是,回到日食會導致相同的錯誤(儘管現在將它們放在我的本地存儲庫中)。

內部的日食當我「運行」>「Maven的安裝」丟失的工件下載並找到。如果我在此之後進行eclipse「Build Project」,我仍然會遇到同樣的問題。

eclipse中的其他項目在相同的工件上遇到相同的問題。

+0

您是否在Eclipse中使用與默認Maven安裝使用的相同Maven設置?您可以將Eclipse配置爲使用外部Maven安裝(首選項 - > Maven - >安裝)。同時檢查用戶設置文件(首選項 - > Maven - >用戶設置),看它是否指向一個合適的文件。 – Luhar

+0

我正在使用外部maven安裝,並且我的settings.xml文件指向正確的nexus服務器。這個問題發生在我關閉了工作空間中的這些項目後,一些元數據混淆了(請參閱下面的答案) – Noremac

回答

0

我曾經發生過類似的事情。我已經檢出com.foo:bar以及com.foo.libraries:s2j,但我沒有將庫配置爲eclipse中的maven項目。所以maven install工作得很好(只使用了pom文件),但eclipse構建失敗。

因此,檢查所有項目都配置爲maven,並嘗試Maven> Update項目並檢查強制更新快照和清理項目。

+0

這當然是eclipse中的maven項目(甚至在項目圖標左上角有一個「m」 )。強制更新和清理(無論是從命令行還是從eclipse)都無濟於事。 – Noremac

0

我找到了解決方案。

顯然,當我做了大量的工作區解決項目時,其中一些處於不良狀態。它看起來像eclipse試圖找到一個工作區解決項目的jar,但項目被關閉,導致他們不存在的結果(而不是看我的本地存儲庫)。

一旦我打開(然後關閉)每個缺失依賴項的相應項目,它們就會在我的本地存儲庫中找到。

相關問題