如何在IntelliJ中运行Play Framework 2.1项目?

时间:2017-07-27 22:07:16

标签: java intellij-idea playframework-2.0 sbt playframework-2.1

我有一个现有的Play 2.1项目。我一直用控制台运行它,它工作正常。但是,当我尝试使用IntelliJ使用IntelliJ运行它时,它不起作用:

https://www.jetbrains.com/help/idea/getting-started-with-play-2-x.html#run_debug_playApp

首先,我尝试通过右键单击应用并选择"运行播放2应用"来运行它。它不会运行,它给了我这个错误:

} elseif (($notes = json_decode($op->notes)) instanceof \stdClass && isset($notes->newSet)) {
    $set = \App\Set::find($notes->newSet);
    $setTitle = $set->title;
}

在对该问题进行一些研究后,我将sbt.IncompatiblePluginsException: Binary incompatibility in plugins detected. 添加到我的JVM选项中并再次尝试。这次它运行了,但是当我尝试在浏览器中打开一个页面时出现了这个错误:

-Djline.terminal=

最后,我尝试将我的项目重新导入intellij。在导入之前,它迫使我将build.properties中的SBT版本从0.12.2更新为0.12.4。我这样做了,但仍然遇到了上面列出的相同错误。

注意:我将Java 7设置为我的JDK。

这是完整的堆栈跟踪:

Global : Unsupported major.minor version 52.0

3 个答案:

答案 0 :(得分:3)

问题是由于Java版本不匹配。参考Wikipedia Java Class Reference

J2SE 8 = 52

J2SE 7 = 51

导入项目try to change project SDK from Java 8 to Java 7

您可以尝试将以下内容添加到build.sbt:

javacOptions ++ = Seq(&#34; -source&#34;,&#34; 1.7&#34;,&#34; -target&#34;,&#34; 1.7&#34;)< / p>

答案 1 :(得分:1)

  

全球:不受支持的major.minor版本52.0

这意味着您已使用JDK 1.8编译并尝试在JDK 1.7中运行。问题是由于Java版本不匹配。 (查看此详细信息example

以下是报告的主要数字列表来源Wiki

Java SE 9 = 53,
Java SE 8 = 52,
Java SE 7 = 51,
Java SE 6.0 = 50,
Java SE 5.0 = 49,
JDK 1.4 = 48,
JDK 1.3 = 47,
JDK 1.2 = 46,
JDK 1.1 = 45

<强>解决方案

可能的解决方案是make-sure项目的编译发生在Java 1.7而不是Java 1.8中。执行以下步骤来解决它(使用-target 1.7选项编译代码):

  

conf/application.conf中,确保设置java.source=1.7

答案 2 :(得分:0)

尝试将Java版本从1.7.0_80更新到更新的1.7版本(例如1.7.0_131)