使用jdk的javap命令可以检查class文件的编译信息,对java软件新旧版本并存时检查版本信息比较有用。
进入编译后的类文件主目录,输入命令,命令格式类似(类package-info.class,所在包com.test):
>javap -verbose F:com estpackage-info.class
输出信息:
com/test/package-info.class
Last modified 2017-11-15; size 347 bytes
MD5 checksum 2e8541a841a4605a15e6baf5403ba5b9
Compiled from "package-info.java"
interface com.test.package-info
SourceFile: "package-info.java"
RuntimeVisibleAnnotations:
0: #8(#9=s#10,#11=e#12.#13)
minor version: 0
major version: 50
flags: ACC_INTERFACE, ACC_ABSTRACT, ACC_SYNTHETIC
Constant pool:
......
注:
=================================
major version:50 对应JDK1.6(十进制51对应jdk1.7,49对应jdk1.5,52对应jdk1.8)
==================================
或者以EMEDITOR以十六进制打开.class文件,查看第四个字节,0x32表示十进制50,即编译目标版本为jdk1.6