Подтвердить что ты не робот

Неподдерживаемая версия major.minor версии 51.0 при запуске игровой среды

Я знаю, что есть конфликт версий. Просто хочу, чтобы кто-то рассказал мне, как его решить. В предыдущем postoverflow post никто не сообщает об этом решении.

Версия: Ubuntu: 12.04.1 LTS java: 1.6.0_24 (OpenJDK) javac: 1.7.0_07 (OpenJDK)

[email protected]:~/Documents/projects/java-projects/mytestapp$ play
[info] Loading project definition from /home/haider/Documents/projects/java-projects/mytestapp/project
[info] Set current project to mytestapp (in build file:/home/haider/Documents/projects/java-projects/mytestapp/)
       _            _ 
 _ __ | | __ _ _  _| |
| '_ \| |/ _' | || |_|
|  __/|_|\____|\__ (_)
|_|            |__/ 

play! 2.0.4, http://www.playframework.org

> Type "help play" or "license" for more information.
> Type "exit" or use Ctrl+D to leave this console.

[mytestapp] $ run

--- (Running the application from SBT, auto-reloading is enabled) ---
[info] play - Listening for HTTP on port 9000...

(Server started, use Ctrl+D to stop and go back to the console...)

[info] Compiling 5 Scala sources and 2 Java sources to /home/haider/Documents/projects/libraries/play-2.0.4/samples/java/helloworld/target/scala-2.9.1/classes...
[warn] Problem processing dependencies of source /home/haider/Documents/projects/libraries/play-2.0.4/samples/java/helloworld/target/scala-2.9.1/src_managed/main/controllers/routes.java : java.lang.UnsupportedClassVersionError: controllers/routes : Unsupported major.minor version 51.0
[warn] Problem processing dependencies of source /home/haider/Documents/projects/libraries/play-2.0.4/samples/java/helloworld/target/scala-2.9.1/src_managed/main/controllers/routes.java : java.lang.UnsupportedClassVersionError: controllers/routes$javascript : Unsupported major.minor version 51.0
[warn] Problem processing dependencies of source /home/haider/Documents/projects/libraries/play-2.0.4/samples/java/helloworld/target/scala-2.9.1/src_managed/main/controllers/routes.java : java.lang.UnsupportedClassVersionError: controllers/routes : Unsupported major.minor version 51.0
[warn] Problem processing dependencies of source /home/haider/Documents/projects/libraries/play-2.0.4/samples/java/helloworld/target/scala-2.9.1/src_managed/main/controllers/routes.java : java.lang.UnsupportedClassVersionError: controllers/routes$ref : Unsupported major.minor version 51.0
[warn] Problem processing dependencies of source /home/haider/Documents/projects/libraries/play-2.0.4/samples/java/helloworld/target/scala-2.9.1/src_managed/main/controllers/routes.java : java.lang.UnsupportedClassVersionError: controllers/routes$javascript : Unsupported major.minor version 51.0
[warn] Problem processing dependencies of source /home/haider/Documents/projects/libraries/play-2.0.4/samples/java/helloworld/target/scala-2.9.1/src_managed/main/controllers/routes.java : java.lang.UnsupportedClassVersionError: controllers/routes : Unsupported major.minor version 51.0
[warn] Problem processing dependencies of source /home/haider/Documents/projects/libraries/play-2.0.4/samples/java/helloworld/target/scala-2.9.1/src_managed/main/controllers/routes.java : java.lang.UnsupportedClassVersionError: controllers/routes$ref : Unsupported major.minor version 51.0
[warn] Error reading API from class file : java.lang.UnsupportedClassVersionError: controllers/routes$javascript : Unsupported major.minor version 51.0
[warn] Error reading API from class file : java.lang.UnsupportedClassVersionError: controllers/routes : Unsupported major.minor version 51.0
[warn] Error reading API from class file : java.lang.UnsupportedClassVersionError: controllers/routes$ref : Unsupported major.minor version 51.0
[warn] Problem processing dependencies of source /home/haider/Documents/projects/libraries/play-2.0.4/samples/java/helloworld/app/controllers/Application.java : java.lang.UnsupportedClassVersionError: controllers/Application$Hello : Unsupported major.minor version 51.0
[warn] Problem processing dependencies of source /home/haider/Documents/projects/libraries/play-2.0.4/samples/java/helloworld/app/controllers/Application.java : java.lang.UnsupportedClassVersionError: controllers/Application : Unsupported major.minor version 51.0
[warn] Problem processing dependencies of source /home/haider/Documents/projects/libraries/play-2.0.4/samples/java/helloworld/app/controllers/Application.java : java.lang.UnsupportedClassVersionError: controllers/Application$Hello : Unsupported major.minor version 51.0
[warn] Problem processing dependencies of source /home/haider/Documents/projects/libraries/play-2.0.4/samples/java/helloworld/app/controllers/Application.java : java.lang.UnsupportedClassVersionError: controllers/Application : Unsupported major.minor version 51.0
[warn] Error reading API from class file : java.lang.UnsupportedClassVersionError: controllers/Application$Hello : Unsupported major.minor version 51.0
[warn] Error reading API from class file : java.lang.UnsupportedClassVersionError: controllers/Application : Unsupported major.minor version 51.0
[info] play - Application started (Dev)
4b9b3361

Ответ 1

Вы используете разные версии JDK для компиляции и запуска приложения. Вы говорите, что:

java: 1.6.0_24 (OpenJDK) 
javac: 1.7.0_07 (OpenJDK)

Итак, ваш компилятор (javac) - это более новая версия, чем команда java, что означает, что вторая не может запускать ваши скомпилированные файлы. Вы должны использовать только 1 версию JDK (то же самое для java и javac)

Ответ 2

В Ubuntu для изменения версии Java для компиляции и работы вам нужно позвонить:

sudo update-alternatives --config javac 

и

sudo update-alternatives --config java

Ответ 3

Лучшим решением является изменение целевой версии, поэтому вы можете скомпилировать ее с 1,6 от 1,7 следующим образом: Как установить версию компиляции javac для платформы Play Framework 2.0, чтобы предотвратить "Неподдерживаемая версия major.minor" ?

Поместите это в свой Build.scala:

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