转自:http://www.linuxidc.com/Linux/2011-12/48923.htm
一个java的class文件是一个二进制文件,其中前四个字节是magic位,第五到第六个字节对应于minor和major,下面是这个类文件版本与JDK的对应关系:
| jdk | minor | major |
| 1.0 | 45 | 3 |
| 1.1 | 45 | 3 |
| 1.2 | 46 | 0 |
| 1.3 | 47 | 0 |
| 1.4 | 48 | 0 |
| 1.5 | 49 | 0 |
| 1.6 | 50 | 0 |
所以当见到类似如下的错误时就应该知道问题出在哪里了:
错误的类文件: ...\jetty-util-8.0.4.v20111024.jar(org/eclipse/jetty/util/TypeUtil.class) 类文件具有错误的版本 50.0,应为 49.0注:这个错误是提示你应该使用jdk1.6而不是jdk1.5。
本文详细解释了Java class文件的版本标识方式,并列举了从JDK 1.0到1.6的不同版本号对应的minor和major值。通过一个具体例子说明了如何根据类文件版本判断所需的JDK版本。
2700

被折叠的 条评论
为什么被折叠?



