Java 不支持ClassVersionError的原因是什么?

Java 不支持ClassVersionError的原因是什么?,java,Java,我一点也不明白这一点;有人能简单地解释一下吗?谢谢当您使用较新版本的JDK编译代码并尝试在较旧版本的JDK上运行时,可能会发生此错误。这是您自己编译的代码吗?您是否使用IDE(如Eclipse)?尝试更新您的类文件。这表示您正在为不同版本的java运行时使用类文件。您正在安装什么程序(我注意到stacktrace中有installj) 尝试升级Java运行时。这意味着您的编译器生成的Java版本高于您试图运行它的JVM 例如,为Java6编译并使用Java5运行 解决方案1:升级jvm(键入ja

我一点也不明白这一点;有人能简单地解释一下吗?谢谢

当您使用较新版本的JDK编译代码并尝试在较旧版本的JDK上运行时,可能会发生此错误。这是您自己编译的代码吗?您是否使用IDE(如Eclipse)?尝试更新您的类文件。

这表示您正在为不同版本的java运行时使用类文件。您正在安装什么程序(我注意到stacktrace中有installj)


尝试升级Java运行时。

这意味着您的编译器生成的Java版本高于您试图运行它的JVM

例如,为Java6编译并使用Java5运行

解决方案1:升级jvm(键入java-version以查看您拥有什么)


解决方案2:以较低版本为目标(例如,在EclipseJava编译器设置中)

JAVA\u HOME应该使用与编译时使用的相同的JAVA版本来定义。

我在安装
JRE
1.8并尝试在
Eclipse Kepler
上运行
GAE应用程序的
Hello World
时遇到了这个错误。这就是解决方案:


我从Eclipse Marketplace
安装了对开普勒的
Java8支持。然后我解决了我的问题,去了
Eclipse
->右键点击项目文件->
属性->
Java构建路径
,我删除了
JRE系统库1.6
,点击了
添加库
->
JRE系统库
安装的JRE的
。然后我点击了
Search
,它自动找到了版本
1.8
,然后我返回到以前的视图,选择了1.8,现在一切正常

从javascript重新标记为java。@Rob,您可以在那里修复代码格式、标题和删除TXTISM。:)意思是有东西坏了。也许有人可以用更多的代码来解释发生了什么。你是如何编译和运行的?另请参见。使用java-version和javac-version来比较编译器的版本和JVM的版本。@Kevin这实际上是许多初学者在开始学习java时犯的一个错误。既然我们都曾经在那里,我们应该容忍初学者所犯的错误。我该如何更新我的JRE?我不使用mac,所以我帮不了你。但您可能想访问superuser.com或apple.stackexchange.com,在那里询问如何升级JVM。@Peter-按照Vincent的建议,在命令提示符中键入
java-version
(假设已安装java环境变量)。它会告诉你你的版本。你可以在我的答案中的链接中下载最新版本。我正在尝试为我的orgo lab安装一个名为marvin sketch的程序,我以为我必须更改java,所以我更改了,但现在我不知道如何修复它。更改java是什么意思?在运行安装程序之前,您对java做了什么吗?是的,我到这里下载了其中一个程序,但我不知道我对哪一个这么困惑:(
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:307)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at com.exe4j.runtime.LauncherEngine.launch(Unknown Source)
at com.install4j.runtime.MacLauncher.main(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:592)
at apple.launcher.LaunchRunner.run(LaunchRunner.java:115)
at apple.launcher.LaunchRunner.callMain(LaunchRunner.java:50)
at apple.launcher.JavaApplicationLauncher.launch(JavaApplicationLauncher.java:52)