在学习maven建项目的时候,执行了一下maven的update project后发现项目报错了,错误信息提示:Dynamic Web Module 3.0 requires Java 1.6 or newer. my_ssm line 1 Maven Java EE Configuration Problem。看了网上的解决方案都是在pom.xml文件中添加以下内容:
<build>
<plugins>
define the project compile level
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
</plugins>
</build>
但所有项目总要加这段,感觉太麻烦了。所以继续查找原因,执行了maven的update指令才改变了项目的JRE版本,那么应该是maven的默认jdk版本问题。
查阅资料后,发现maven的settings.xml文件中有个标签可以配置maven的jdk版本。一般安装maven的时候无需指定,使用的是maven默认的。因此,只需要将其改为指定的版本即可,相关配置如下:
修改maven的配置文件setting.xml,找到<profiles>,然后在之间添加以下内容:
<profile>
<id>jdk-1.7</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.7</jdk>
</activation>
<properties>
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>1.7</maven.compiler.target>
<maven.compiler.compilerVersion>1.7</maven.compiler.compilerVersion>
</properties>
</profile>
添加完上面的内容,先将项目的JRE system Library改为JavaSE-1.7,再次执行maven的update project后,发现成功了。项目的JRE环境版本没变。问题得到解决!!!