查看java class文件的编译版本号

时间:2021-03-26 17:19:51

用maven做项目依赖管理,依赖了一个其他组开发的一个基础包。结果,在使用maven进行编译打包的时候,报了错: Unsupported major.minor version 51.0。
注:我本机上目前只安装了 jdk 1.8

使用Eclispse自带的工具,即使看不到源码,也还可以看到该class当时编译器的版本。

查看java class文件的编译版本号

如果没有eclipse,也可以使用java自带的工具,查看 class编译时使用的编译器版本。

$ javap -v ServiceImpl.class

或者

$ javap -verbose ServiceImpl.class

查看java class文件的编译版本号

我们可以看一下 jdk版本和major version对应关系:

J2SE 8 = 52, J2SE 7 = 51, J2SE 6.0 = 50, J2SE 5.0 = 49, JDK 1.4 = 48, JDK 1.3 = 47, JDK 1.2 = 46, JDK 1.1 = 45

由此,可以说明 ,依赖的jar包是经过jdk1.7 的编译器进行编译的。