查看class文件获取编译jdk版本信息

查看class文件获取编译jdk版本信息

问题描述

一个纯Java项目,每次通过更换class文件实现项目更新。开发人员调试后正常运行,测试人员自行打包拉取class文件后报错。
在这里插入图片描述

原因分析

通过文件比对,发现开发人员与测试人员的class文件在开头存在差异,最终确定为测试人员使用jdk版本与项目不一致。

jdk版本区分

只看第一行的数据:

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

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

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

JDK版本号对应关系如下:

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

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

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

class文件截图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值