用Eclipse创建Maven结构的web项目的时候选择了Artifact Id为maven-artchetype-webapp
由于这个catalog比较老,用的servlet还是2.3的,而一般现在至少都是2.5,在Project Facets里面修改Dynamic web module为2.5的时候就会出现Cannot change version of project facet Dynamic web module to 2.5
解决步骤如下:
1. 修改web.xml
修改前如下:
Archetype Created Web Application
修改后如下
Archetype Created Web Application
2. 修改项目的设置,在Navigator下打开项目.settings目录下的org.eclipse.jdt.core.prefs
修改前如下:
eclipse.preferences.version=1org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabledorg.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5org.eclipse.jdt.core.compiler.compliance=1.5org.eclipse.jdt.core.compiler.problem.assertIdentifier=errororg.eclipse.jdt.core.compiler.problem.enumIdentifier=errororg.eclipse.jdt.core.compiler.problem.forbiddenReference=warningorg.eclipse.jdt.core.compiler.source=1.5
把1.5改成1.6,修改后如下
eclipse.preferences.version=1org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabledorg.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6org.eclipse.jdt.core.compiler.compliance=1.6org.eclipse.jdt.core.compiler.problem.assertIdentifier=errororg.eclipse.jdt.core.compiler.problem.enumIdentifier=errororg.eclipse.jdt.core.compiler.problem.forbiddenReference=warningorg.eclipse.jdt.core.compiler.source=1.6
还是以上目录,修改org.eclipse.wst.common.component
修改前如下
把project-version="1.5.0"改成project-version="1.6.0",修改后如下
还是以上目录,修改org.eclipse.wst.common.project.facet.core.xml
修改前如下
修改后如下
修改后成后再打开,已经把Dynamic web module改成了2.5,如图