在maven的默认配置中,对于jdk的配置是1.4版本,那么创建/导入maven工程过程中,工程中未指定jdk版本。
对工程进行maven的update,就会出现工程依赖的JRE System Library会自动变成JavaSE-1.4。
还有一种情况就是在maven指令编译的时候,如果jdk版本高,则需要匹配高版本的maven.compiler。之前遇到过类似的错误,但是没有记录。可惜...
解决方案1:修改maven的默认jdk配置
maven解压目录的conf\setting.xml文件中找到jdk配置的地方,修改如下:
<profile>
<id>jdk1.6</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.6</jdk>
</activation>
<properties>
<maven.compiler.source>1.6</maven.compiler.source>
<maven.compiler.target>1.6</maven.compiler.target>
<maven.compiler.compilerVersion>1.6</maven.compiler.compilerVersion>
</properties>
</profile>
这种方案不是首选,因为开发过程中有可能会经常jdk版本切换,新老项目要求的环境也有可能不同,统一配置后会导致其他空间或者环境低版本或者高版本的问题。
解决方案2:修改项目中pom.xml文件,这样避免在导入项目时的jdk版本指定
打开项目中pom.xml文件,修改如下(推荐解决方案):
1. <build>
2. <plugins>
3. <plugin>
4. <groupId>org.apache.maven.plugins</groupId>
5. <artifactId>maven-compiler-plugin</artifactId>
6. <configuration>
7. <source>1.6</source>
8. <target>1.6</target>
9. </configuration>
10. </plugin>
11. </plugins>
12. </build>