Eclipse Maven: Cannot change version of project facet Dynamic web to 3.0 的解决方法

时间:2023-03-09 02:56:30
Eclipse Maven: Cannot change version of project facet Dynamic web to 3.0 的解决方法

在 Eclipse 中创建 Maven web 项目的时候使用 maven-artchetype-webapp 骨架,但是这个 catalog 比较老,用的 servlet 还是 2.3

在 Project Facets 里面修改 Dynamic web module 为 3.0 的时候会报错 如下

Eclipse Maven: Cannot change version of project facet Dynamic web to 3.0 的解决方法

解决办法:

第一步 在 navigator 视图中修改 .settings/org.eclipse.wst.common.project.facet.core.xml 文件

设置 Dynamic Web Module 版本和 java 版本

<?xml version="1.0" encoding="UTF-8"?>
<faceted-project>
<fixed facet="wst.jsdt.web"/>
<installed facet="wst.jsdt.web" version="1.0"/>
<installed facet="java" version="1.8"/>
<installed facet="jst.web" version="3.1"/>
</faceted-project>

Eclipse Maven: Cannot change version of project facet Dynamic web to 3.0 的解决方法

第二步 修改项目的 web.xml 文件,即 src/main/webapp/WEB-INF/web.xml

<?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="schedule-console" version="3.0">
<display-name>Archetype Created Web Application</display-name>
</web-app>

Eclipse Maven: Cannot change version of project facet Dynamic web to 3.0 的解决方法

然后右键项目 --> Maven --> Update Project