2013-11-04 97 views
9

我使用IntelliJ IDEA 12,Play 2.2.0,我安裝了Scala插件,安裝了Play 2.0支持插件。Idea + Play Framework - 無法解析方法/符號

我通過termina創建了java play應用程序(play new)。仿製藥申請,你可以在這個圖片中看到我總是得到這樣的錯誤:「無法解析的方法確定()」或

http://sluchatka.kvalitne.cz/pics/1.png

http://sluchatka.kvalitne.cz/pics/2.png

我在網上搜索了這個問題,「在無法解析符號」整天,但我沒有找到解決辦法。 你能幫我嗎?

回答

4

第一個問題(無法解析對模板的引用)是因爲您的模板可能尚未編譯(因此IDEA未看到已編譯的模板並且無法解析對其的引用)。

我通常會在Play控制檯中開發Play play應用程序,並啓動~run命令。因此,對模板的任何更改都會立即編譯,IDEA檢測到更改。

至於第二個,它似乎是Play IDEA插件中的一個缺陷。它不能在我應該說的模板中無縫工作。很多故障。我發現的最佳方式是啓動~run,以便立即檢測到小問題。

4

根據intelliJ支持,最好使用IDE導入項目嚮導導入命令行創建的play 2項目。

  1. 文件 - >導入項目
  2. 選擇play2項目位置
  3. 導入爲SBT項目

這是由於「打主意」命令是過時的或者與當前完全兼容爲intelliJ玩2和scala插件。

一個好處是錯誤開始正確顯示,我們之前遇到了麻煩。

+0

它不起作用。將項目導入爲SBT後,將出現相同的錯誤。 – nyuwec

2

我與Play 2.4.2和Intellij 14.1.4有類似的問題。我可以在Intellij中運行基本的「play-java」示例/入門應用程序,即使編輯器顯示「無法解析方法ok()」等錯誤。

這裏是爲我解決了這個問題:

  1. 開始之前,請確保您的項目不開放的IntelliJ。

  2. 從現有應用程序中刪除「.idea」文件夾,或者使用「activator new」創建一個新應用程序。

  3. 在命令行上,cd到應用程序的文件夾並使用「activator compile」進行編譯。

  4. 在Intellij,文件 - >打開,並選擇您的應用程序的文件夾。對於SBT導入選項,我沒有選中框(例如「使用自動導入」,「自動爲空的內容根目錄創建目錄」等),但我認爲它不重要。

一旦所有內容加載完畢,您不應再看到錯誤。

+0

這是爲我工作,intelliJ Ultimate 14 +玩2.4.3 – Roylee

0

這是項目結構中的點擊是您的答案。

enter image description here