【问题标题】:Idea + Play Framework - cannot resolve method/symbolIdea + Play Framework - 无法解析方法/符号
【发布时间】:2013-11-15 14:42:37
【问题描述】:

我使用 IntelliJ IDEA 12,Play 2.2.0,我安装了 Scala 插件,安装了 Play 2.0 支持插件。

我通过终端创建了 java play 应用程序(play new)。 Andas you can see in this pictures I always get this error: "cannot resolve method ok()" or "cannot resolve symbol at"

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

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

我整天在网上搜索这个问题,但我没有找到解决方案。 你能帮帮我吗?

【问题讨论】:

    标签: java scala playframework intellij-idea playframework-2.2


    【解决方案1】:

    第一个问题(无法解析对模板的引用)是因为您的模板目前可能尚未编译(因此 IDEA 看不到已编译的模板并且无法解析对它的引用)。

    我通常开发在 Play 控制台中启动 ~run 命令的 Play 应用程序。这样对模板的任何更改都会立即编译并由 IDEA 检测到。

    至于第二个,它似乎是 Play IDEA 插件的一个缺陷。我应该说它在模板中不能无缝工作。很多毛病。我发现最好的方法是启动~run,以便立即检测到小问题。

    【讨论】:

      【解决方案2】:

      根据 IntelliJ 支持,最好使用 IDE 导入项目向导导入命令行创建的 play 2 项目。

      1. 文件 -> 导入项目
      2. 选择 play2 项目位置
      3. 导入为 SBT 项目

      这是由于“play idea”命令已过时或与当前 play 2 和 intelliJ 的 scala 插件不完全兼容。

      一个好处是错误开始正确出现,我们之前遇到了麻烦。

      【讨论】:

      • 它不起作用。将项目导入为 SBT 后,出现相同的错误。
      【解决方案3】:

      我在使用 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 导入选项,我没有选中这些框(例如“使用自动导入”、“自动为空内容根目录创建目录”等),但我认为这并不重要。

      所有内容加载完成后,您应该不会再看到错误了。

      【讨论】:

      • 这对我有用,intelliJ Ultimate 14 + play 2.4.3
      【解决方案4】:

      在项目结构中的这个点击就是你的答案。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-02-21
        • 1970-01-01
        • 1970-01-01
        • 2015-09-17
        相关资源
        最近更新 更多