用maven做项目依赖管理,依赖了一个其他组开发的一个基础包。结果,在使用maven进行编译打包的时候,报了错: Unsupported major.minor version 51.0。
注:我本机上目前只安装了 jdk 1.8
使用Eclispse自带的工具,即使看不到源码,也还可以看到该class当时编译器的版本。
如果没有eclipse,也可以使用java自带的工具,查看 class编译时使用的编译器版本。
$ javap -v ServiceImpl.class
或者
$ javap -verbose ServiceImpl.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 的编译器进行编译的。