Ответ 1
Добавление
javacOptions ++= Seq("-source", "1.6", "-target", "1.6")
в файл build.sbt работал у меня (чтобы быть прозрачным, в моем случае было 1,7 для сборки с JDK 8).
Модуль, который я использую, должен быть скомпилирован с Java 1.7, и у меня есть только 1.6.
Если я хочу, чтобы модуль был скомпилирован для определенной версии, например, 1.6, как я могу установить это в Play! Framework 2.0, чтобы я мог предотвратить ошибки "Неподдерживаемая версия major.minor".
В игре! 1.x вы можете установить "java.version = 1.6" в application.conf.
Я предполагаю, что в Play! 2.x, вероятно, необходимо установить где-нибудь для sbt - но где/как?
Добавление
javacOptions ++= Seq("-source", "1.6", "-target", "1.6")
в файл build.sbt работал у меня (чтобы быть прозрачным, в моем случае было 1,7 для сборки с JDK 8).
В файле 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" (если у вас есть эта строка в файле built.sbt).
Убедитесь, что у вас есть правильный путь к вашему sdk, вы можете проверить это, набрав:
java-home
в консоли воспроизведения или активатора.
Также убедитесь, что вы запустите
clean
в консоли, чтобы избавиться от всех ранее скомпилированных ресурсов.
теперь скомпилируйте свой код, используя
compile
тебе должно быть хорошо идти. Надеюсь, это поможет!
Я думаю, единственное решение - создать файл build.sbt в корне проекта и добавить
javaHome: = Some (файл ( "path_to_your_jdk" ))