2013-02-22 557 views
8

昨天我重構了我的項目,並更改了我的包的佈局(我將一些包移動到另一個包中,創建了新的包等)。但是現在,當我嘗試運行JUnit測試時,我得到NoSuchMethodError關於重構後名稱改變的方法。另外,當我在方法中更改其他代碼時,IDEA仍然運行舊代碼..我試圖在「文件」菜單中運行「無效緩存」,我也嘗試重新啓動計算機 - 沒有結果。哪裏可以解決問題?Intellij IDEA無法檢測到更改

編輯:移動套餐IDEA不能正確改變包聲明中.java文件,所以我用手改變了他們後,昨天

回答

1

我有兩個建議你可以試試這裏

  • 編輯您的測試配置(s)並確保它們指向你所期望的。我有時看到在運行配置中沒有找到重構,我不得不手動修改它
  • 不太可能工作,但嘗試同步項目:文件 - >同步。在您的項目的最高級別執行此操作

關於您的編輯 - 我沒有親自看過。每當我重命名或移動文件(包括軟件包)時,這些更改都已正確應用於所有適用的文件。你正在重構重構>移動/重構 - >複製?

+1

這並沒有幫助我。我甚至不重構代碼。 我只是寫一個代碼來讓我的測試通過。但是,當我從intelliJ運行測試時,該代碼並未反映出來。但是,如果我運行「mvn clean install」,然後在intelliJ中運行測試,它工作正常。 – 2016-05-03 07:39:48

2

SOLUTION:

錯誤後2周神奇的事情了:

  1. 我進口這個項目到Eclipse和運行JUnit測試從日食。然後我返回到IDEA並刪除了所有Eclipse特定的文件。

  2. 我同步了我的項目(文件 - >同步)。

我不知道到底是什麼,問題的解決方案,但建議我接受@ SeanLandsman的回答

3

VCS - >刷新文件狀態解決了這個對我來說,當的IntelliJ突然停了下來察覺的變化。

0

另一個根本原因可能是:

如果您使用的龍目島,嘗試卸載/重新安裝的IntelliJ龍目島的插件。

在我的情況下,這解決了這樣一個奇怪的行爲!

0

回答到一個老問題,但:

如果您使用的是運行配置,確保「運行/調試配置」對話框中的「啓動之前」一節中,你已經添加了「打造」 。它有時似乎會從該對話框中刪除,即使您已將其添加到默認設置中。