IntelliJ IDEA Ultimate与Play Framework 2.6.7 Java导入'符号未解析'

时间:2017-11-23 06:00:00

标签: intellij-idea playframework playframework-2.0

这是一个示例项目,刚刚从Play Framework的网站下载,或者我的项目是从模板中进行了一些更改而得到的 - 没什么大不了的 - IntelliJ似乎无法找到Play所需的相应依赖项或来源发展。

我已经为IntelliJ安装了Scala插件,其中包括对Play Framework的支持。在阅读了Play文档中的多篇文章以及此处提出的问题之后,我将概述我所遵循的过程,尽管尚未证实答案非常有用。

  1. 在IntelliJ IDEA Ultimate 2017.2.6
  2. 中打开项目设置
  3. 点击Modules> [+]> Import Module
  4. 在项目根目录中查找build.sbt
  5. 使用默认SBT设置导入:
    • 下载:[checked]图书馆来源,[checked] SBT来源
    • [unchecked]使用SBT shell进行构建和导入(需要sbt 0.13.5 +)
    • Project JDK:[9.0 (java version 9.0.1)] - 这可能是问题吗? (相容性)
  6. SBT编译并且我得到了这个错误,我有点不屑一顾但现在读它似乎有些明显但我不确定是什么:https://pastebin.com/tXbHQdek

    使用sbt run运行网站是有效的,但在打开.java来源时,IntelliJ会在import play.mvc.*上标记错误,尽管import views.html.*工作正常。添加Play 2.x的框架支持似乎几乎没有,因为没有项目设置似乎发生变化,并且错误未得到解决。

    这种行为存在于一个干净的IntelliJ 2017 Ultimate安装(截至今天)和来自Play Framework的示例项目,没有任何修改,所以如果找不到解决方案,我可能会考虑在他们的一个或多个上发布一个问题问题跟踪器。

    有关如何使我的Play Framework开发环境有效的任何想法? 谢谢:3

1 个答案:

答案 0 :(得分:0)

这最初并没有发生在我身上,但是在我通过Play Framework Google小组搜索时,我发现了一个关于卸载Java 9的近期帖子的建议,因为Play的依赖关系尚未与之兼容,因此无法解决。

对于任何可能遇到此问题的人来说,希望这可以节省你几天的时间:

  1. 可选 - 卸载JDK和JRE 9
  2. 安装JDK 8(随JRE提供)
  3. 从IntelliJ内部File> Project Structure> SDKs> [任何Java 9 JDK]> [-]
  4. [+]> `找到你的JDK 8安装文件夹
    • 32位:C:/Program Files (x86)/Java/jdk****/
    • 64位:C:/Program Files/Java/jdk****/
    • ****是您的Java版本,例如1.8_152,如jdk1.8_152
  5. 按OK。您将收到项目SDK缺失或类似的警告,因此请单击它为您提供的链接以配置它并选择新配置的JDK。
  6. 一切都应该在那里工作,就在IntelliJ索引之后,它可以在右下角跟踪所有其他操作进度。