playframework 2.0 - 如何为 Play Framework 2.0 设置 javac 编译版本以防止"Unsupported major.minor version"?



我使用的模块一定是用Java 1.7编译的,而我只有1.6。

如果我想为1.6这样的特定版本编译模块,我如何在Play中设置它!Framework 2.0,这样我就可以防止"不支持的主要版本.次要版本"错误。

正在播放!1.x您可以在application.conf.中设置"java.version=1.6"

我认为在Play!2.x它可能需要设置在sbt的某个位置,但在哪里/如何设置?

添加

javacOptions ++= Seq("-source", "1.6", "-target", "1.6")

build.sbt文件对我有效(为了透明,在我的情况下,使用JDK8构建是1.7)。

在文件project/Build.scala中,如果您想使用java 1.6:进行编译,请添加以下设置

val main = play.Project(appName, appVersion, appDependencies).settings(
  // Force compilation in java 1.6
  javacOptions in Compile ++= Seq("-source", "1.6", "-target", "1.6")
)

我想明白了,放

javaHome := Some(file("path_to_your_jdk"))

在build.sbt文件的最后。确保你把它放在"playJavaSettings"之后(如果你的build.sbt中有这行)。

确保你有正确的路径分配给你的sdk,你可以通过键入:来验证这一点

java-home

在Play或activator控制台中。

还要确保运行

clean

在控制台中删除所有以前编译的资源。

现在使用编译代码

compile 

你应该很乐意去。我希望这能有所帮助!

我认为唯一的解决方案是在项目的根目录中创建文件build.sbt并添加

javaHome:=某些(文件("path_to_your_jdk")

最新更新