新建的项目,手工拷贝的web.xml后,项目出现小红叉,在Markers中发现报错Cannot change version of project facet Dynamic Web Module to 2.4,原因是我拷贝的web.xml文件中有如下代码
<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
而之前maven自动生成的代码如下
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" >
发现,对于web-app的版本有区别。
解决如下:
更改项目根目录下的.settings文件夹,里面的org.eclipse.wst.common.project.facet.core.xml文件属性,<installed facet="jst.web" version="2.3"/>更改为<installed facet="jst.web" version="2.4"/>,后update project,错误消失。