最近跳槽到一家新公司做办公系统后台,项目是基于Eclipse,JDK1.6开发,并且基于不同模块需求在不同的分支进行开发,切换分支后运行项目经常出现Unsupported major.minor version 51.0等类似的问题,该问题是JDK版本不对应导致的,JDK版本与major.minor version对应关系如下:
序号 | jdk版本 | major.minor version |
1 | 1.1 | 45 |
2 | 1.2 | 46 |
3 | 1.3 | 47 |
4 | 1.4 | 48 |
5 | 5 | 49 |
6 | 6 | 50 |
7 | 7 | 51 |
8 | 8 | 52 |
:
网上针对Unsupported major.minor version也给出了相应的修改JDK版本的步骤:
一、修改Eclipse对应的JDK版本号:
Window -- Preference -- Java -- Installed JREs
二、修改项目的JDK编译版本号:
项目右键 -- Java Compiler
三、修改Web容器对应的JDK版本号:
公司项目使用的是tomcat6,其他web容器修改方法类似
Window -- Preference -- Server -- Runtime Environment -- Apache Tomcat v6.0 -- Edit -- JRE
以上是网上给出的解决方案,但有时你按照以上方法修改后运行还是会出现Unsupported major.minor version,今天我就遇到这种情况,改来改去改了一个小时毫无结果,然后突然想起之前修改过本地项目Tomcat下的配置文件:org.eclipse.wst.common.project.facet.core.xml,里面对应也配置过JDK的版本信息,文件位于tomcat下的.settings文件夹中,打开发现没有该文件,果断从别的项目中拷贝一个,并将JDK版本修改为JDK1.6,最终成功运行项目。大伙遇到相应的问题不妨也试一试:
<?xml version="1.0" encoding="UTF-8"?>
<faceted-project>
<installed facet="java" version="1.6"/>
</faceted-project>