问题描述

  Eclipse 新建 Maven Web 项目,修改 Dynamic Web Module 时报错:Cannot change version of project facet Dynamic Web Module to 3.0.

Cannot change version of project facet Dynamic Web Module to 3.0. 随笔 第1张

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

解决方法

1)将 Servlet Version 改为 3.0,修改项目中的 web.xml 如下

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

2)修改项目的设置,右键项目 —> Show In —> System Explorer(或者使用快捷键 Alt + Shift + W),使用 Notepad++ 打开项目 .\workspace\mavenDemo\.settings\ 目录下的 org.eclipse.jdt.core.prefs,把 1.5 改为 1.8

eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
org.eclipse.jdt.core.compiler.compliance=1.8
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
org.eclipse.jdt.core.compiler.source=1.8

3)打开 org.eclipse.wst.common.project.facet.core.xml,把 java 版本改为 1.8,把 jst.web 改为 3.0

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

Cannot change version of project facet Dynamic Web Module to 3.0. 随笔 第2张

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄