用Eclipse Maven 创建 Web 3.0 项目问题 正确的处理步骤
在Eclipse 安装好Maven插件后,创建Maven webapp项目,在工程 properties -> project facets 界面中将 Dynamic Web Module 修改为 3.0 时,Eclipse 总是提示 Cannot change version to Dynamic WebModule 3.0.
代码没有红叉叉, 但是整个工程目录上有红叉叉, 很不爽,很不爽、很不爽。
网上大多数的解决方法都是 找到 .setting文件夹内的org.eclipse.wst.common.project.facet.core.xml文件,修改为
<installed facet="jst.web" version="2.5"/> 改为
<installed facet="java" version="1.7"/>
<installed facet="jst.web" version="3.0"/>
但是还是会有 Maven Jave EE Configuration Problems 的红叉叉.
此问题分两步解决
1、 Eclipse Project Facets 设置问题
单独将 Dynamic Web Module 设置为 3.0 , 或修改 Java 版本似乎不起作用。设置Project Facets的争取顺序是
正确的设置方法是: a), 取消选择 Dynamic Web Module ,并应用
b), 取消选择 Java , 并应用。
C), 重新选择 Java, 并应用。 此时需要设置源目录, 设置为src\main\java
d),重新选择Dynamic Web, 并应用。 此时需要设置WebContent目录 为 src\main\webapp
2、Maven 设置问题
a) Eclipse Maven 自动生成的web.xml 文件(webapp/WEB-INF/web.xml)中
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" >
修改为 3.0
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 3.0//EN"
"http://java.sun.com/dtd/web-app_3_0.dtd" >
b) 设置 Maven Complier 插件为jdk 1.7 版本
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
经过以上两个步骤设置,项目的所有红叉叉都消除了。