1.新建一个Maven Project
选择Maven Project
选择maven-archetype-webapp
Group Id
是项目组织唯一的标识符,实际对应 Java 的包的结构,是 main 目录里 java 的目录结构。
Artifact Id
就是项目的唯一的标识符,实际对应项目的名称,就是项目根目录的名称。
新建的Maven项目结构为:
注意红框的结构,只有一个 src/main/resources,而且项目报下面的 HttpServlet 错误
项目右击 Properties
选择Java Build Path
选择 Add Library
添加 Server Runtime
选择 Apache Tomcat7
服务器(Tomcat8 需要 web版本3.1)
HttpServlet 错误解决,项目结构也有变化,自动补全src/main/java
和src/test/java
目录
此刻 maven 项目的 web.xml 版本为2.3,jre 版本为1.5,需要升级。
2.修改项目 jre版本和 web.xml 版本
2.1修改 jre 版本
修改 jre 版本,不能再Java Bulid Path
中修改,一旦项目 update project
又会回到 1.5 的版本,可以在pom.xml 文件中声明
pom.xml
-
...
-
<build>
-
<finalName>TestMaven3</finalName>
-
<plugins>
-
<!-- 修改maven默认的JRE编译版本,1.8代表JRE编译的版本,根据自己的安装版本选择1.7或1.8 -->
-
<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>
-
</project>
项目右击选择Maven Update Project
项目的Java Build Path
为:
之后你可以 Edit 把 jre 指定到Workspace default JRE(项目右击properties-Java bulid Path- Libraries --Add Library)
2.2修改web.xml
文件版本
这是默认生成的web.xml
,可以看到是2.3版本的。
web.xml
-
<!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>
项目右击Properties
选择Project Facets
(项目模板),如下图,可以看到Dynamic Web Module
版本为 2.3
直接更改为3.0?,但是并不能更改
这里可以先把Dynamic Web Module
勾选去掉,之后Apply。
再接着勾选Dynamic Web Module
,注意下方出现Further configuration available...
选项;接着更改为想要的版本 3.0,点击Further configuration available...
之后,修改 Content director
为src/main/webapp
,勾选Generate web.xml deployment descriptor
OK,保存退出Project Facets
之后修改src/main/webapp/WEB-INF/web.xml
文件,头信息版本修改为 3.0 版本的。
web.xml
-
<?xml version="1.0" encoding="UTF-8"?>
-
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
-
-
</web-app>