使用eclipse手动建一个maven的web project可能会有版本不合适的情况,例如使用spring的websocket需要web3.0什么的,不全面的修改可能会出现各种红叉,甚是苦恼。我从我的使用经验出发,从建立一个maven项目开始,记录我用maven建一个web3.0的项目。
建立一个maven的web项目
1、首先要安装配置好maven,具体怎么配置就不说了。
2、eclipse->new project->maven project->next->选择maven-archetype-webapp
3、Group ID:唯一的组织或机构名,相当于package的前缀;Artifact Id:项目名;Package:包名,会自动填好
4、配置Deployment Assembly,需要添加一个maven lib,如果缺少什么文件,可以在项目的src->main下面新建。
最后成功创建一个web2.3的项目。
修改web的版本
1、 在项目的.setting文件夹中编辑org.eclipse.wst.common.project.facet.core.xml文件,将 <installed facet="jst.web" version="2.3"/> 的2.3改为3.0,随后右键项目,选择maven->update project ,之后会出现红叉,不用担心,接着下一步。
2、右击项目,找到properties->project facets,将Dynamic web Module改为3.0,而下面的java版本也改为相应的。
3、在web.xml文件中的<web-app>代替,其中版本要相互对应,最后再update project,红叉就消失了,版本就变为3.0了。
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
如果觉得每次update project项目JRE System Lib都会变化,那么,可以再pom.xml的<build>上加上
<plugins>
<!-- 编译的时候使用JDK7和UTF8编码 ,-->
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<!-- <version>3.0</version> -->
<configuration>
<source>1.7</source>
<target>1.7</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin> <!-- 编译jar包 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<addMavenDescriptor>false</addMavenDescriptor>
<manifest>
<addDefaultImplementationEntries>true</addDefaultImplementationEntries>
<addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
</manifest>
</archive>
</configuration>
</plugin>
</plugins>
最后此处应该有一个springmvc+hibernate的pom.xml文件:下载地址