Cannot change version of project facet Dynamic Web Module to 2.4原因&解决办法

问题描述

最近出于好奇与学习之情,特地花了半天时间巩固已有知识,采用spring+springmvc+mybatis 3大开源框架集成了一个demo ,数据库采用开源免费的msyql

详细搭建步骤此处略去,后面会整理出从0开始搭建一个完成的ssm 的demo。

通过设置完项目的build path,部署路径,编译设置等,项目的左上角一直会出现红色x箭头。

Cannot change version of project facet Dynamic Web Module to 2.4原因&解决办法_第1张图片

我找遍了所有文件并未发现有编译报错的Java文件和配置文件。虽然这个报错兵不影响项目的运行,但是作为一个转牛角尖的程序员来说,看到项目报错总是会觉得不舒服,我有一个习惯看这任何提示黄色警告的Java代码我也会很不爽,会想一切办法解决编译的警告或者出错。下面介绍下我的解决过程。

原因查找

打开problems 视图界面,这里会显示出所有项目的编译错误,会有提示,比如这里的ssm项目提示Cannot change version of project facet Dynamic Web Module to 2.4

解决方法

知道报错原因了,那自然就可以通过报错信息找到解决方法了。

 

dynamic web module 版本之间的区别如下

Servlet 3.0

December 2009

JavaEE 6, JavaSE 6

Pluggability, Ease of development, Async Servlet, Security, File Uploading

Servlet 2.5

September 2005

JavaEE 5, JavaSE 5

Requires JavaSE 5, supports annotations

Servlet 2.4

November 2003

J2EE 1.4, J2SE 1.3

web.xml

 

Cannot change version of project facet Dynamic Web Module to 2.4 这个错误是指当前的web.xml 配置的j2ee版本和项目中的project facets 的j2ee版本不一致导致

Cannot change version of project facet Dynamic Web Module to 2.4原因&解决办法_第2张图片

Web.Xml 中是2.4

Cannot change version of project facet Dynamic Web Module to 2.4原因&解决办法_第3张图片

Ssm project facets 是2.5

 

把project facets 中的 改成和web.xml中的一致2.4即可

特殊声明:直接在project facets中修改成2.4 会提示报错,如下所示:

这下怎么办呢,不用急,此路不通,走其他路。

打开导航view,找到org.eclipse.wst.common.project.facet.core.xml,将2.5 改成2.4保存

Cannot change version of project facet Dynamic Web Module to 2.4原因&解决办法_第4张图片

 

然后执行项目右键Maven的Update Project...即可。

效果如下图所示:

Cannot change version of project facet Dynamic Web Module to 2.4原因&解决办法_第5张图片

你可能感兴趣的:(Cannot change version of project facet Dynamic Web Module to 2.4原因&解决办法)