解决Cannot change version of project facet Dynamic web module to 2.5
一直听说maven很厉害,但是一直没用过,今天无事,拿来耍耍。不废话,直接进入正文。
一、安装及配置:此处省去100字,网上教程一大堆,本文主要针对maven创建web3.0的web工程
二、网上有很多教程,但是创建都有这样或那样的问题,我觉得应该是没有指明开发工具的版本,我使用的是jdk1.7,tomcat7.0,maven3.0.还有eclipse luna
首先需要安装eclipse的maven插件,这也不多说,请自行谷百。
直接新建maven project
直接finish,建完项目结构图如下图所示
会发现有报错,这是因为项目未引入servlet-api.jar,下面来引入
引入之前,请remove maven构建时默认使用的jre1.5,
下面来添加jre和server-runtime
finish后看到项目已经没有报错,现在的项目是可以使用的,但是servlet是2.5的,这样servlet的配置是基于web.xml的,比较麻烦(虽然是eclipse帮我们做的,但个人还是觉得不爽),故下面来修改项目,使其支持servlet3.0.
首先修改workspace中的项目根目录下的.setting文件夹下的org.eclipse.wst.common.project.facet.core.xml文件,如图
当然上面的1.7也可以是1.6,这个取决于你机器上安装的jdk的版本。
刷新后,会发现项目报错,右键工程,打开properties。会发现Dynamic web Module版本已经变成3.0,Java已经变成1.7的了。
但是控制台还是报错,如图
接下来需要添加3.0支持
打开pom.xml文件,在build节点下添加:
- <span style="white-space:pre"> </span><plugins>
- <plugin>
- <artifactId>maven-compiler-plugin</artifactId>
- <version>3.0</version>
- <configuration>
- <source>1.7</source>
- <target>1.7</target>
- </configuration>
- </plugin>
- </plugins>
然后重新maven --> update project,会发现任然报错
接下来只需要删除webx.xml文件即可,因为web.xml文件任然是2.3时的web.xml。
再次update或者刷新,ok咯。然后接可以使用项目了。创建web3.0基本就这样。