2011-08-23 34 views
2

我設置我的播放框架1.2.1項目從內使用的IntelliJ從谷歌組的以下職位的說明運行:IntelliJ爲什麼說:包安全不存在?

http://groups.google.com/group/play-framework/msg/54cfe212cbae218e

然而,在http://www.playframework.org/documentation/1.2.2/guide8教程之後,我越來越從IDE下面的錯誤:

/Library/WebServer/Documents/devschool.play/app/controllers/Security.java 
package Secure does not exist 
/Library/WebServer/Documents/devschool.play/app/controllers/Application.java 
cannot find symbol class Secure 

當我運行與應用程序>播放運行,一切工作正常,但我更喜歡從IDE運行它。請注意,在添加安全模塊之前,該項目完全從IDE運行。

有沒有辦法解決這個問題?我有一個預感,這是與外部來源,但不是一個Java專家,我不完全知道如何做到這一點。

任何人都可以請協助嗎?

+0

當取消選中「製作」,在「編輯配置」對話框中的「啓動之前」面板,以及項目運行在運行和調試模式下都沒有任何問題。但是,IDE仍然以紅色表示「@With(Secure.class)中的Secure」,並聲明它'無法解析符號安全性'。我如何讓他們消失? –

+0

對我來說這個答案是最有意義的:http://stackoverflow.com/questions/7166860/why-is-intellij-saying-package-secure-does-not-exist/7746550#7746550 – ripper234

回答

4

好的,因此在從編輯配置對話框中取消選中「生成」複選框後,項目正在編譯並運行正常。

爲了讓IDE找到代碼,您只需要附加源代碼。在Mac上,按Command +;並在「庫」部分下添加源代碼。

2

從您發佈的第二個環節,有一個名爲Security類,它看起來像這樣:

public class Security extends Secure.Security { 

    static boolean authenticate(String username, String password) { 
     return true; 
    } 

} 

Security延伸Secure.Security,這是在Secure包名爲Security另一個類。這個錯誤是說它找不到包Secure。確保你的類路徑中包含了所有內容。

0

請務必添加模塊dependencies.yml或添加依賴於application.conf(這是由方式不建議使用)後運行遊戲的理想化

7

您應該運行下面的命令:

 
play dependencies 
play idealize 

第一個將解決來自Secure模塊的依賴關係。 第二個將更新IntelliJ「類路徑」和有關安全模塊的紅線/錯誤將消失。

+0

嗯,我跑理想化當我第一次開始使用帶有Play!的IntelliJ時,從來沒有意識到它需要在模塊更換後再次運行。 – ripper234

0

在application.conf中添加模塊已棄用,不應再使用。而是使用dependencies.yml並添加

- play -> secure 

所以現在我dependencies.yml樣子:

# Application dependencies 

require: 
    - play 
    - play -> secure 

我然後跑:

play dependencies 
play idealize 

,並有一個延遲,但最終的IntelliJ認可該模塊。不確定是否最後的命令是必要的。

(從播放教程的相關頁面重新發布由薩沙·克萊伯答案:http://www.playframework.org/documentation/1.2.4/guide8

相關問題