eclipse报错Dynamic Web Module 3.0 requires Java 1.6
今天接手了一个公司之前的项目,要求修改迭代,内心是崩溃的,尤其是导入项目飘一大片红的时候,一番操作之后,还是有 4 个 war 项目飘着红,
打开项目,表面上代码并没有问题,也不影响程序的运行,这个时候打开我们的 Markes 就会发现报错原因
首先正面这个错误信息,当创建有动态 web 模块 3.0 支持的项目时,需要用到 Java 版本不低于 1.6。因为 Eclipse 默认的版本是 1.5。项目导入之后的 jdk 版本也变成了 1.5, 我这边项目是 1.7 版本的 jdk, 下面举例都是以 1.7 为主
解决办法:
1 右键项目 Build Path add Library 添加 JRE 版本为 1.7
2 右键项目 Properties JavaCompiler ,查看 Compiler compliance level 的版本是不是 1.7,如果不是修改为 1.7
3 右键项目 Properties Project Facets 查看 java 是不是 1.7,不是则更改
4 打开 pom.xml 文件, 添加 maven-compiler-pluginch 插件
1 2 3 4 5 6 7 8 9 10 | <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version> 3.1 </version> <configuration> <!-- 一般而言,target与source是保持一致的,但是,有时候为了让程序能在其他版本的jdk中运行(对于低版本目标jdk,源代码中不能使用低版本jdk中不支持的语法),会存在target不同于source的情况 --> <source> 1.7 </source> <!-- 源代码使用的JDK版本 --> <target> 1.7 </target> <!-- 需要生成的目标 class 文件的编译版本 --> </configuration> </plugin> |
这个时候,Maven update 一下,错误就成功消失了