Java检查*.class文件的编译版本

使用jdk的javap命令可以检查class文件的编译信息,对java软件新旧版本并存时检查版本信息比较有用。

 

进入编译后的类文件主目录,输入命令,命令格式类似(类package-info.class,所在包com.test):

>javap -verbose F:\com\test\package-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.749对应jdk1.5,52对应jdk1.8)
==================================
或者以EMEDITOR以十六进制打开.class文件,查看第四个字节,0x32表示十进制50,即编译目标版本为jdk1.6

 

 

posted on 2017-12-07 10:24  jhoncooper  阅读(511)  评论(0编辑  收藏  举报