Exception in thread "main"java.lang. .UnsupportedClassVersionError: 的解决办法

最近在linux上运行windows上打jar包时报错:Exception in thread "main" java.lang.UnsupportedClassVersionError: wc/WordCountMain : Unsupported major.minor version 52.0  , 截图如下:

Exception in thread

经过交流说是自己jdk版本不一样导致报错,因为我windows上是用jdk1.8版本写的,而linux上是jdk1.7,是jdk版本不一样导致的。解决办法一是在windows上下载个jdk1.7,用jdk1.7写Java程序,然后在打jar包再在linux上运行;但我不想在下一个jdk1.7,于是我尝试在ide中将jre改成JavaSE-1.7在打jar包,如下图:

Exception in thread

然后再打jar包,再在linux上运行,结果运行成功:

Exception in thread

就此exception解决,总结发现linux在编译windows打好的jar包时只对jdk版本号进行识别,那我们就可以在windows上选择对应的jdk版本而不用重新用对应的jdk版本编写代码,这样就会方便很多,但解析jar包时用到的一些东西和运行代码所需的类在两个版本的jdk必须一致,这样才不会报错。

不知道理解的对不对,本人写本文属记录心路历程;由于时间水平有限,有不对的地方希望广大大牛批评指正,谢谢



你可能感兴趣的:(bigdata)