2013-12-17 65 views
8

偶爾,在POM發生更改的SVN更新之後,IntelliJ似乎沒有注意到這一點,並開始出現奇怪的行爲(不存在的類,方法......)。我現在知道重新導入所有Maven項目可以解決這個問題,但我不明白爲什麼這是必要的。何時以及爲什麼需要重新導入所有Maven項目?

我已勾選'自動導入Maven項目'。

我不認爲這是因爲這已經在版本12的情況下的一個錯誤,現在仍然是在13

+0

'自動導入Maven項目'應該處理這種情況。如果它不起作用,請[提交錯誤](http://youtrack.jetbrains.com/issues/IDEA)以及重現步驟和測試用例。 – CrazyCoder

+0

剛剛發生了這個問題;我們所有的pom都從快照-X更新爲快照-Y。一個make顯示的錯誤似乎不是有效的。全部導入並解決問題。這不僅僅是我,我們都從eclipse遷移到IntelliJ,並且現在都有這個問題。 –

+0

要清楚,這不是回到日食的理由:-)。 –

回答

7

這種行爲通常是與傳遞依賴的依賴問題。如果您依賴於模塊之間的傳遞依賴關係,那麼IntelliJ可能會在識別出需要自動重新導入時遇到問題。最佳做法是列出每個模塊中的所有直接依賴關係。然後,當模塊被更改並重建或重新導入時,依賴它的模塊將被重建。所以,我的建議是檢查你的依賴關係,確保你的樹中沒有傳遞 - 'mvn dependency:tree'可能有幫助。

+0

Tx。我們有大約140個(maven)項目,所以這將是一些工作,以檢查所有這些,但如果我有機會,我會嘗試在一些測試工作區重現這一點。 –

+0

通過將所有依賴項列在我們的項目的父項目的依賴管理中,將其他項目列出來解決問題。這是非常類似於你的建議,所以謝謝你的提示。 –

相關問題