江湖开发者 | Java粉
网站地图
首页> Java> 如何查看class文件的版本
2017
02-08

如何查看class文件的版本

如何查看class文件的版本

项目更新了一个class文件后,启动报空指真.最后定位是class版本的问题

2017-1-11 16:00:06 org.apache.jk.server.JkMain start
淇℃伅: Jk running ID=0 time=0/35  config=null
2017-1-11 16:00:06 org.apache.catalina.startup.Catalina start
淇℃伅: Server startup in 26376 ms
Exception in thread "HouseKeeper" java.lang.NullPointerException
	at org.logicalcobwebs.proxool.HouseKeeperController.getHouseKeeperToRun(HouseKeeperController.java:53)
	at org.logicalcobwebs.proxool.HouseKeeperThread.run(HouseKeeperThread.java:33)

一.如何查看class文件的版本

使用UltraEdit打开文件,切换到16进制方式显示。

图1是jdk5编译的 ,图2是jdk7编译的

jdk5.png

jdk7.png

(1)前面8个字节CA FE BA BE是固定的。

(2)随后4个字节00 00是次版本号

(3)再后面的4个字节00 34是JDK的版本号(JDK1.8)。

JDK版本对应关系:

34(对应十进制的50):JDK1.8

33(对应十进制的50):JDK1.7

32(对应十进制的50):JDK1.6

31(对应十进制的49):JDK1.5

   30(对应十进制的48):JDK1.4

   2F(对应十进制的47):JDK1.3

  2E(对应十进制的46):JDK1.2

二.Eclipse如何编译出对应的class版本

Window -> Preferences -> Java -> Installed JREs (选中相应的jdk)

Window -> Preferences -> Java -> Compiler (选中相应的编译级别)


Java江湖     
全部评论:

表情验证码,看不清楚,换一张

随机文章

云标签

公众号

微信

分享:分享我们的知识;专注:专注个人技术的提升;