玩!框架运行抛出UnsupportedClassVersionError

时间:2012-04-27 17:06:01

标签: java macos playframework

后台,此应用程序正在Play上运行! Mac OS X 10.5.8上的框架1.2.4

我正在运行的命令:sudo play run

引发的异常:

Exception in thread "main" java.lang.UnsupportedClassVersionError: Bad version number in .class file
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:676)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
    at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:317)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:280)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:375)
    at java.lang.Class.getDeclaredConstructors0(Native Method)
    at java.lang.Class.privateGetDeclaredConstructors(Class.java:2357)
    at java.lang.Class.getConstructor0(Class.java:2671)
    at java.lang.Class.newInstance0(Class.java:321)
    at java.lang.Class.newInstance(Class.java:303)
    at play.plugins.PluginCollection.loadPlugins(PluginCollection.java:158)
    at play.Play.init(Play.java:294)
    at play.server.Server.main(Server.java:158)

应用程序的application.conf和所有相关模块都设置为java.source=1.6

sudo $JAVA_HOME/bin/java -version收益java version "1.6.0_26"

我甚至将/ System / Java / Home指向1.6安装。

还有什么可能导致这种情况?

1 个答案:

答案 0 :(得分:2)

你的PATH中有哪些Java版本?我们得到了一个类似的问题(不是Play,但是),其中应用程序的所有设置似乎都指向1.6但是PATH引用了1.5,因为它在PATH字符串中的位置而首先被加载。

检查您的路径。而且,我不是Mac用户,但有必要使用sudo?在Ubuntu中我运行Play。如果可能,这可能有助于减少root用户路径和配置导致的意外冲突。