一、搭建maven-web工程
1、maven 建项目的时候选择 webapp。然后对话框选择 groupID:就是公司名。artifactID:就是项目名。
2、添加依赖项,比如build path 中 add library –> server runtime
3、在pom.xml中配置jdk编译版本
<build> <finalName>o2o</finalName> <plugins> <plugin> <!-- 指定maven编译的jdk版本,如果不指定,maven3默认用jdk 1.5 maven2默认用jdk1.3 --> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.6.1</version> <configuration> <!-- 一般而言,target与source是保持一致的,但是,有时候为了让程序能在其他版本的jdk中运行(对于低版本目标jdk,源代码中不能使用低版本jdk中不支持的语法),会存在target不同于source的情况 --> <souce>1.8</souce> <!-- 源代码使用的JDK版本 --> <target>1.8</target><!-- 需要生成的目标class文件的编译版本 --> <encoding>UTF8</encoding><!-- 字符集编码 --> </configuration> </plugin> </plugins> </build>
4、补全工程文件夹和输出位置。maven工程有四个文件夹:
main/resources main/java 编译输出目录:target/classes test/resources test/java 编译输出目录:target/test-classes (新创建的test/resources目录,记得要修改一下输出目录)
5、在maven项目中,选中项目右键属性,有个project facets,里面有一个Dynamic web module,将动态网站版本改成3.1。这里eclipse有一个bug,无法修改。需要修改项目文件夹目录,找到.setting隐藏文件夹,编辑文件org.eclipse.wst.common.project.facet.core.xml
<?xml version="1.0" encoding="UTF-8"?> <faceted-project> <fixed facet="wst.jsdt.web"/> <installed facet="java" version="1.7"/> <installed facet="jst.web" version="3.1"/> <installed facet="wst.jsdt.web" version="1.0"/> </faceted-project>
facet=”jst.web” version=”3.1″ 这个2.3值改成3.1后,还需要将web.xml的2.3版本改一下:
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd" > <web-app> <display-name>Archetype Created Web Application</display-name> </web-app>
修改成下面这个3.1动态网站版本:
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1"> <display-name>Archetype Created Web Application</display-name> </web-app>