Cannot change version of project facet Dynamic web module to 3.0

问题描述

        用Eclipse创建Maven结构的web项目的时候选择了Artifact Id为maven-artchetype-webapp,由于这个catalog比较老,用的servlet还是2.3的,而一般现在都是用3.0,在Project Facets里面修改Dynamic web module为3.0的时候就会出现Cannot change version of project facet Dynamic web module to 3.0,如图:

其实在右边可以看到改到3.0需要的条件以及有冲突的facets

解决这个问题的步骤如下:

1.把Servlet改成3.0,打开项目的web.xml ,将version改为3.0

Cannot change version of project facet Dynamic web module to 3.0

2.修改项目的设置,在Navigator下打开项目.settings目录下的org.eclipse.jdt.core.prefs

把1.5改成1.7

Cannot change version of project facet Dynamic web module to 3.0

3. 打开org.eclipse.wst.common.project.facet.core.xml  

把1.5改成1.7

Cannot change version of project facet Dynamic web module to 3.0

最后的效果如图:

Cannot change version of project facet Dynamic web module to 3.0