eclipse maven Cannot change version of project facet Dynamic web module to 3.0
(eclipse 修改maven项目的Dynamic web moudule)
CreationTime--2018年6月8日08点22分
Author:Marydon
1.前言
百度出来一大堆,要么方法过于麻烦,改了很多不必要的修改;要么就解决不了你的问题,特写此文!!!
2.情景再现
通过maven创建的javaWeb项目无法修改的servlet版本
3.解决方案
第一步:切换到Navigator视图
第二步:打开并修改 org.eclipse.wst.common.project.facet.core.xml
项目-->.settings文件夹-->org.eclipse.wst.common.project.facet.core.xml
可以看到servlet版本为2.3,java版本为1.5
将servlet改成3.0-->保存
注意:在这里直接修改java的版本无效,改了也不起作用,文末推荐有正确方法!
第三步:打开并修改web.xml
说明:虽然将Servlet的版本修改成了3.0,但是web.xml引用的还是2.3。
将以下代码进行复制,覆盖掉原来的web.xml文件中内容(servlet3.0引用方式)-->保存
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> <display-name>你的项目名</display-name> <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> <welcome-file>default.html</welcome-file> <welcome-file>default.htm</welcome-file> <welcome-file>default.jsp</welcome-file> </welcome-file-list> </web-app>
第四步:更新maven项目
选择要更新的maven项目,全部使用默认项
大功告成,项目不再报错
4.小结
在eclipse中,修改web项目的Servlet版本,可以通过最上面那种方式直接修改;
但是,修改maven项目Servlet版本,上面那种方式会报错,正确方式为:
必须通过修改项目的org.eclipse.wst.common.project.facet.core.xml来实现