Maven安装
下载
解压
配置环境变量
M2_HOME环境变量
path环境变量
集成到Eclipse
Eclipse之中创建Maven Web项目
创建Maven Web项目
修改项目配置
把Maven Web项目改为Java Web项目
选择JDK版本
选择Dynamic Web Module版本
选择Tomcat
创建java目录
效果
修改web.xml
修改pom.xml
测试
编写HelloWorldServlet
使用Maven一键部署到Tomcat中
设置tomcat用户密码
修改Mawen的配置文件
安装Tomcat Maven部署插件
部署
运行服务器
使用Maven部署项目
Tomcat之中部署的效果
参考资料
使用的软件版本
eclipse for Java EE 2019
jdk 1.8
Tomacat 8.5
Maven 3.5.4
Maven安装
下载
解压
配置环境变量
M2_HOME环境变量
path环境变量
集成到Eclipse
Eclipse之中创建Maven Web项目
创建Maven Web项目
在Eclipse
显示项目的Package Explorer
的空白处点击鼠标右键,然后依次选择:New-Other...
在弹出的New
窗口中,展开Maven
,选择Maven Project
,然后点击Next
。
然后默认,点击Next
往下拖动滚动条到最后,选择maven-archetype-webapp
,点击Next
填入坐标,Group Id
,Artifact Id
,剩下的随意,最后点击Finish
即可
这样就创建好了一个Maven
的Web
项目,这个项目会报错,如下图所示,这是因为还没有引入Tomcat
的库导致的.
修改项目配置
把Maven Web项目改为Java Web项目
在项目上点击右键,选择Properties
:
选择JDK版本
展开Maven
,选择Proiect Facets
,取消勾选Dynamic Web Module
,然后把Java的版本改为1.8
,然后点击Apply
选择Dynamic Web Module版本
接着把Dynamic Web Module
的版本改为3.1
,然后勾选上Dynamic Web Module
,这个时候下面会弹出这个链接Further configuration available....
:
3 指定Web应用根目录
点击这个连接,然后勾选上Generate web. xml deployment descriptor
,点击OK
选择Tomcat
然后点击右边的Runtimes
勾选上对应的Tomcat
,最后点击Apply and Close
即可。
创建java目录
在src
下面的main
目录下创建一个java
目录,我们后面的java
代码会放在这里
效果
此时的项目结构如下图所示:
修改web.xml
打开web.xml
文件,可以看到默认生成的代码如下:1
2
3
4
5
6
<web-app>
<display-name>Archetype Created Web Application</display-name>
</web-app>
全选,然后粘贴如下代码:1
2
3
4
5
6
7
<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>HelloWorld</display-name>
</web-app>
到这里就可启动项目了,看到效果了。
修改pom.xml
把junit
版本改为4.12.
测试
启动项目,浏览器将显示index.jsp
页面之中的内容,如下图所示:
编写HelloWorldServlet
在src/main/java
下创建一个hello
包,创建一个HelloWorldServlet.java
文件,粘贴如下代码:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24package hello;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
"/HelloWorldServlet") (
public class HelloWorldServlet extends HttpServlet
{
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException,IOException
{
response.setContentType("text/html,charset=utf-8;");
PrintWriter writer = response.getWriter();
writer.println(
"<html><head><title>helloworld</title></head>"
+ "<body><h2>HelloWorld</h2></body>"
+ "</html>");
}
}
地址上面输入URL:http://localhost:8080/HelloWorld/HelloWorldServlet即可访问到该Servlet
,显示效果如下:
使用Maven一键部署到Tomcat中
上面我们用的是Eclipse
部署的,使用Maven
可以打包把项目部署成war
包
设置tomcat用户密码
打开Tomcat
安装目录中conf
目录下的tomcat-users.xml
配置文件,或者Eclipse
中Server
项目中的tomcat-users.xml
,在<tomcat-users></tomcat-users>
之中添加如下代码:1
2
3
4
5
6<role rolename="manager-gui" />
<role rolename="manager-script" />
<role rolename="manager-jmx" />
<role rolename="manager-status" />
<user password="admin" username="admin"
roles="manager-gui,manager-script,manager-jmx,manager-status" />user
标签表示一个后台管理员,其中username
,password
分别是该后台管理员的账户和密码,roles
属性对应上面的role
标签,一个role
表示一个权限
修改Mawen的配置文件
打开Maven
安装目录下conf
目录下的settings.xml
配置文件,或者%HOME
%\.m2
目录下的settings.xml
<servers></servers>
标签中添加如下代码:1
2
3
4
5<server>
<id>tomcat8</id>
<username>admin</username>
<password>admin</password>
</server>
安装Tomcat Maven部署插件
项目中的pom.xml
,在<build></build>
标签之中添加如下代码:1
2
3
4
5
6
7
8
9
10
11
12
13<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<url>http://127.0.0.1:8080/manager/text</url>
<username>admin</username>
<password>admin</password>
<path>/HelloWorld</path>
</configuration>
</plugin>
</plugins>
用户名和密码与上面一致,其中<path
>标签表示部署在tomcat
,webapp
下的路径,
部署
运行服务器
在eclipse之中运行服务器,
使用Maven部署项目
右键项目,
输入如下命令:1
clean install tomcat7:redeploy
部署成功控制台输出如下:1
2
3
4
5
6
7
8
9
10
11[INFO] Deploying war to http://127.0.0.1:8080/HelloWorld
Uploading: http://127.0.0.1:8080/manager/text/deploy?path=%2FHelloWorld&update=true
Uploaded: http://127.0.0.1:8080/manager/text/deploy?path=%2FHelloWorld&update=true (3 KB at 2249.0 KB/sec)
[INFO] tomcatManager status code:200, ReasonPhrase:
[INFO] OK - Deployed application at context path [/HelloWorld]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3.765 s
[INFO] Finished at: 2019-04-26T18:45:17+08:00
[INFO] ------------------------------------------------------------------------
看到BUILD SUCCESS
这句话就表示部署成功了,Deploying war to http://127.0.0.1:8080/HelloWorld
这句话表示部署到了http://127.0.0.1:8080/HelloWorld这个URL上.打开这个URL
即可看到效果:
Tomcat之中部署的效果
打开tomcat
的webapps
目录可以看到Maven
部署的war
包:
参考资料
https://blog.csdn.net/ai_lian_shuo/article/details/77096071#t11
https://www.linuxidc.com/Linux/2017-05/143308.htm