UnsupportedClassVersionError的解决
来源:互联网 发布:手机淘宝10.0 编辑:程序博客网 时间:2024/05/01 04:04
今天看Eclipse的一个教程,里面有一段代码:java.lang.UnsupportedClassVersionError
照着写好编译运行,结果console出现如下异常提示:
java.lang.UnsupportedClassVersionError: math/ErrorTest (Unsupported major.minor version 49.0)
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:539)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:251)
at java.net.URLClassLoader.access$100(URLClassLoader.java:55)
at java.net.URLClassLoader$1.run(URLClassLoader.java:194)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:187)
at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274)
at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
Exception in thread "main"
baidu了一下,说是用高版本jdk编译好的class无法在低版本JVM上运行导致的。这一问题在jdk1.5和更早版本这两者之间尤其明显。
别说,我真的是装了1.42和1.5两个版本的jdk。
解决办法:以IDE使用Eclipse为例,打开菜单 Windows -> Preferences -> Java-> Compiler, 在JDK compiliance里面compiler compiliancelevel一项改成和机器正在用的JVM同样版本,我的情况是从1.5改成1.4。
另外,如果之前对某个project单独设置过build path或者compile设置,最好改完上面的也单独看一下那个project的设置是否一起变过来了。我的情况就是没变过来还要专门改一次。
- package math;
- public class ErrorTest {
- public static void main(String[] args) {
- System.out.println( factorial(6) );
- }
- public static int factorial(int value) {
- if ( value == 0 ) {
- return value;
- } else {
- return value * factorial(value-1);
- }
- }
- }
照着写好编译运行,结果console出现如下异常提示:
java.lang.UnsupportedClassVersionError: math/ErrorTest (Unsupported major.minor version 49.0)
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:539)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:123)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:251)
at java.net.URLClassLoader.access$100(URLClassLoader.java:55)
at java.net.URLClassLoader$1.run(URLClassLoader.java:194)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:187)
at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274)
at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
Exception in thread "main"
baidu了一下,说是用高版本jdk编译好的class无法在低版本JVM上运行导致的。这一问题在jdk1.5和更早版本这两者之间尤其明显。
别说,我真的是装了1.42和1.5两个版本的jdk。
解决办法:以IDE使用Eclipse为例,打开菜单 Windows -> Preferences -> Java-> Compiler, 在JDK compiliance里面compiler compiliancelevel一项改成和机器正在用的JVM同样版本,我的情况是从1.5改成1.4。
另外,如果之前对某个project单独设置过build path或者compile设置,最好改完上面的也单独看一下那个project的设置是否一起变过来了。我的情况就是没变过来还要专门改一次。
- UnsupportedClassVersionError的解决
- UnsupportedClassVersionError异常的解决
- UnsupportedClassVersionError的解决
- java.lang.UnsupportedClassVersionError的错误解决
- java.lang.UnsupportedClassVersionError的错误解决
- 关于java.lang.UnsupportedClassVersionError的错误解决
- 解决java.lang.UnsupportedClassVersionError
- 解决java.lang.UnsupportedClassVersionError
- 解决java.lang.UnsupportedClassVersionError问题
- 解决java.lang.UnsupportedClassVersionError问题!!
- 解决java.lang.UnsupportedClassVersionError问题!!
- maven的UnsupportedClassVersionError
- UnsupportedClassVersionError
- UnsupportedClassVersionError
- UnsupportedClassVersionError
- .UnsupportedClassVersionError
- UnsupportedClassVersionError
- UnsupportedClassVersionError
- 关联--依赖、组合--聚合 联系与区别:
- To rub elbows 交朋友
- 电子签名的技术实现
- 社区里的微软面试题及我的解答(2)
- 非常道之CMMI -- 简介(一)
- UnsupportedClassVersionError的解决
- seo工作真的很难啊!
- oracle高级复制配置手记
- abstract抽象类
- 免费网络硬盘绝对免费
- Dojo Learning: Dojo.data
- Mysql 密码
- 遭遇Eclipse3.4BUG
- UnsupportedClassVersionError