maven新项目eclipse提示Cannot change version of project facet Dynamic web module to 2.4
这里写图片描述
解决办法:

最简单的就是将

<web-app>标签内的属性删除,不主动标记版本等其他属性信息

或者麻烦点操作:
就是将项目web.xml中web-app标签的version=”2.3”修改为2.4
最顶层添加 <?xml version="1.0" encoding="UTF-8"?>
删除<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" >

修改前:


<!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>
  <display-name>Archetype Created Web Application</display-name>
</web-app>

修改后:

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns="http://java.sun.com/xml/ns/j2ee"
    xmlns:web="http://xmlns.jcp.org/xml/ns/javaee"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
    http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" 
>

然后右键项目,maven->update project,看看报错是否消失

如果还是不行则继续:

切换到Navigator视图,打开项目的.settings

找到org.eclipse.wst.common.component.xml,修改project-version=”1.5.0”为1.6.0

找到org.eclipse.wst.common.project.facet.core.xml,修改
<installed facet=”jst.web” version=”2.3”/>为<installed facet=”jst.web” version=”2.4”/>

查看project facet中Dynamic web module 为 2.4,如果不是手动设置一下
这里写图片描述

然后右键项目,maven->update project,报错消失

GitHub 加速计划 / ma / maven
4.28 K
2.65 K
下载
Maven: Apache Maven是一个开源的项目管理和构建工具,主要用于Java项目。适合需要自动化项目构建和依赖管理的开发者。特点包括约定优于配置、易于使用和社区驱动。
最近提交(Master分支:8 天前 )
7ea795b7 The `FilteredProjectDependencyGraph` class fix for non-transitive case and an UT. Also contains some improvement in classes, making them immutable as intended. --- https://issues.apache.org/jira/browse/MNG-8256 6 天前
2b13a43c 7 天前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐