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

Play framework - как исправить UnsupportedClassVersionError на JRE 6?

Я запускал свое приложение для игры на OpenJDK 1.7. Все было хорошо и хорошо, пока я не попытался развернуть герою, которая поддерживает OpenJDK 1.6. Я исправил синтаксис для запуска на OpenJDK 1.6, однако, когда я его запускаю, я получаю следующую ошибку:

[email protected]:/src/playtest$ java -version
java version "1.6.0_23"
OpenJDK Runtime Environment (IcedTea6 1.11pre) (6b23~pre11-0ubuntu1.11.10.2)
OpenJDK 64-Bit Server VM (build 20.0-b11, mixed mode)
[email protected]:/src/playtest$ play run
~        _            _ 
~  _ __ | | __ _ _  _| |
~ | '_ \| |/ _' | || |_|
~ |  __/|_|\____|\__ (_)
~ |_|            |__/   
~
~ play! 1.2.4, http://www.playframework.org
~
~ Ctrl+C to stop
~ 
Listening for transport dt_socket at address: 8000
22:13:21,806 INFO  ~ Starting /src/playtest
22:13:21,811 INFO  ~ Module securesocial is available (/src/play-1.2.4/modules/securesocial-0.2.4)
22:13:21,811 INFO  ~ Module crudsiena is available (/src/playtest/modules/crudsiena-2.0.2)
22:13:21,812 INFO  ~ Module siena is available (/src/playtest/modules/siena-2.0.7)
Exception in thread "main" java.lang.UnsupportedClassVersionError: DocViewerPlugin : Unsupported major.minor version 51.0
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:634)
    at play.classloading.ApplicationClassloader.loadApplicationClass(ApplicationClassloader.java:166)
    at play.classloading.ApplicationClassloader.loadClass(ApplicationClassloader.java:84)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
    at play.plugins.PluginCollection.loadPlugins(PluginCollection.java:158)
    at play.Play.init(Play.java:294)
    at play.server.Server.main(Server.java:158)

Похоже, что есть класс Java 1.7, скомпилированный где-то, что игра пытается запускаться на виртуальной машине Java 1.6.

Я запустил воспроизведение в чистоте, а также удалил кэш плюща и запустил проигрыватели, чтобы переустановить все зависимости. Я также искал каталог приложений и установочную директорию для игры в stray.class, и не нашел их. Я также попытался очистить /tmp включить файл, на который ссылался, но он не имел никакого эффекта.

DocViewerPlugin является одним из основных плагинов для игры, и мне он не нужен, есть ли способ его черного списка?

4b9b3361

Ответ 1

Вы должны скомпилировать код с помощью параметра -target 1.6.

Ответ 2

Я понял это. В application.conf убедитесь, что установлен java.source=1.6.