【问题标题】:Intellij IDEA don't recognize Play 2.0 featuresIntellij IDEA 无法识别 Play 2.0 功能
【发布时间】:2013-05-13 09:31:52
【问题描述】:

我从 Github 签出了项目,然后运行 ​​sbt gen-idea 并在 IDEA 中打开了这个项目。其中一个项目模块使用 Play 2.0 框架。

但 IDEA 无法识别 Play! 特有的符号。 IE。我收到以下错误:cannot resolve symbol index 在以下语句 views.html.index 中。

其他特定于 Play 的相同错误!框架功能,例如我在routes 变量上得到相同的错误。

附:我已经安装了Play 2.0ScalaSBT 插件并且还配置了 Play 2.0 框架根目录(在Project Settings - Play configuration

【问题讨论】:

    标签: scala playframework intellij-idea playframework-2.0


    【解决方案1】:

    就我个人而言,我不使用 IntelliJ 的 Play 插件。使用命令行来编译/生成不同的元素总是更快更可靠,包括著名的*.template.scala,在您的cannot resolve symbol index 通知的来源。

    您所要做的就是根据应用程序的根文件夹运行此命令行:play,然后是 compile。当然,不要使用 IntelliJ 中的任何 Rebuild project,否则您会从命令行中删除生成的类文件。在处理非托管资源(如模板)时,只需创建一个cmd+F9 即可编译。

    确保从 IntelliJ 输出编译配置为映射与应用程序的 target 文件夹相同的文件夹(sbt gen-idea(虽然我使用 playthen idea with-sources=yes)通常是自动配置的)。

    那么您的 IntelliJ 项目就不会再抱怨一些 views.html.index 未解决的问题了。

    当然,如果您真的想从您的 IntelliJ IDE 中受益,请确保您已安装最后一个 Play 2.X plugin

    或者,在 IntelliJ 中创建自定义 runcommand 以考虑 SBT 编译。

    【讨论】:

    • 嗨 Mik,当我使用 play idea with-sources=yes 时,不知何故,它抱怨 with-sources 不为人知:[error] Not a valid key: with-sources (similar: watch-sources, sources, resources) 你知道为什么吗?
    • 你是先单独输入play命令,然后再输入idea with-sources=yes吗?
    • 我尝试将 idea 和 with-sources 作为 play.bat cmdline 的参数。将尝试建议的方式,谢谢!
    • @Jaap 这应该可以。实际上,您尝试的一步中的此命令不起作用;)(我更新了答案以反映它)
    • 因为这个问题是关于让 IDEA 与 Play 一起工作的,我认为劝阻用户不要使用 IDEA 是没有帮助的。此外,用户已经说过安装了您建议他们安装的插件。
    【解决方案2】:

    对于使用 Java Play 2.4.x 和 IntelliJ 15 的任何人,我的同事也经常遇到这个问题。我们安装了 Scala 插件(内置 SBT)并且我们所有的依赖项都很好。原来问题出在他们打开项目的方式上(不要问我为什么)。

    做: 文件 -> 新建 -> 现有来源的项目...

    不要: 文件->打开

    【讨论】:

    • 在 IDEA 2016.1 中,我注意到在 Scala 插件抛出异常后,Intellij 默默地禁用了它。以后所有尝试导入/打开 Play(基于 sbt)项目的尝试都失败了。我唯一的线索是 Scala 没有列在 New Project 对话框的左语言选择栏中。我不确定 Scala 插件是 flakey 还是 JetBrains 让它变得脆弱。
    • 对于 IDEA 2016.1,这里是打开 Play/sbt 项目的详细说明。 jetbrains.com/help/idea/2016.1/getting-started-with-sbt.html?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-27
    • 2022-10-04
    • 2017-12-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多