用Eclipse创建maven管理的web项目的时候,我们都知道创建出来的web.xml,servlet的版本2.3太低了,一般都会改成高版本的,但是会出现这个错误Cannot change version of project facet Dynamic Web Module to 3.0。解决办法如下:
到Eclipse的工作空间中,找到你的项目,项目里面有个.settings目录,然后找到里面的org.eclipse.wst.common.project.facet.core.xml 文件。
把 facet="jst.web" version="2.3" 这一项中的version手动改成version="3.0",保存更改之后右击项目,选择maven选项下的update project更新一下项目。
但是还是有个警告出现,想要编译3.0版本的servlet程序需要jdk1.7以上,而maven创建的项目是默认使用J2SE-1.5的库管理项目,我开始很自然的想法是把上面文件的facet="java" version="1.5"这项中的version改变,但是发现没有用。
参考别人的解决方案,在pom.xml中加入:
<build> <finalName></finalName> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> </plugins> </build>
成功解决了问题