eclipse maven Cannot change version of project facet Dynamic web module to 3.0

时间:2023-03-09 19:51:20
eclipse maven Cannot change version of project facet Dynamic web module to 3.0

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版本

eclipse maven Cannot change version of project facet Dynamic web module to 3.0

3.解决方案

  第一步:切换到Navigator视图

eclipse maven Cannot change version of project facet Dynamic web module to 3.0

  第二步:打开并修改 org.eclipse.wst.common.project.facet.core.xml

  项目-->.settings文件夹-->org.eclipse.wst.common.project.facet.core.xml

  可以看到servlet版本为2.3,java版本为1.5

eclipse maven Cannot change version of project facet Dynamic web module to 3.0

  将servlet改成3.0-->保存

eclipse maven Cannot change version of project facet Dynamic web module to 3.0

  注意:在这里直接修改java的版本无效,改了也不起作用,文末推荐有正确方法!

  第三步:打开并修改web.xml

eclipse maven Cannot change version of project facet Dynamic web module to 3.0  

  说明:虽然将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项目

eclipse maven Cannot change version of project facet Dynamic web module to 3.0

  选择要更新的maven项目,全部使用默认项

eclipse maven Cannot change version of project facet Dynamic web module to 3.0

  大功告成,项目不再报错

eclipse maven Cannot change version of project facet Dynamic web module to 3.0

4.小结

  在eclipse中,修改web项目的Servlet版本,可以通过最上面那种方式直接修改;

  但是,修改maven项目Servlet版本,上面那种方式会报错,正确方式为:

  必须通过修改项目的org.eclipse.wst.common.project.facet.core.xml来实现