4

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

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

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

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

4

2 回答 2

1

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

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

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

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

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

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

于 2013-05-13T09:54:02.540 回答
1

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

执行: 文件 -> 新建 -> 来自现有源的项目...

不要: 文件 -> 打开

于 2016-01-15T23:43:27.120 回答