Maven(三):将web项目的war包热部署到远程Tomcat服务器

Maven(三):将web项目的war包热部署到远程Tomcat服务器

 

相关阅读:

Maven(一):安装与环境配置、使用Maven搭建web项目

Maven(二):常用命令、依赖管理

Maven(三):将web项目的war包热部署到远程Tomcat服务器

Maven(四):使用maven整合Spring+SpringMVC+Mybatis框架详细步骤

Maven(五):使用maven整合Struts2+Spring+Hibernate框架详细步骤


 

以前没有使用远程部署war到Tomcat服务器的时候,都是将项目打包成war格式(eclipse中run->install,就会再target文件夹中生成一个war包),再使用连接服务器的工具把war包上传到远程服务器的webapps目录下,然后让服务器自动解压,完成部署。但是这种方式太不方便,不仅效率低还很麻烦。因此,这篇博客,我们将介绍如何使用Maven远程部署war包到服务器。

1、配置Tomcat的manager:

在远程Tomcat服务器的conf/tomcat-users.xml,中添加管理员账户,密码和权限,然后保存重启服务器。

<role rolename="manager-gui"/>
<role rolename="admin-gui"/>
<role rolename="manager-script"/>
<user username="admin" password="admin" roles="manager-gui,admin-gui,manager-script"/>

在远程Tomcat服务器的conf/Catalina/localhost目录下创建一个manager.xml文件,文件内容为:

<?xml version="1.0" encoding="UTF-8"?>
<Context privileged="true" antiResourceLocking="false"
         docBase="${catalina.home}/webapps/manager">
             <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="^.*$" />
</Context>

2、在Maven项目的POM.XML引入插件:

(1)主要插件:

<!-- 配置Tomcat插件 -->
<plugin>
	<groupId>org.apache.tomcat.maven</groupId>
	<artifactId>tomcat7-maven-plugin</artifactId>
        <version>2.2</version>
	<configuration>
		<port>8080</port>
		<url>http://119.29.194.159:8080/manager/text</url>
		<username>admin</username>
		<password>admin</password>
		<path>/serviceMarket-manager-web</path>
		<update>true</update>
	</configuration>
</plugin>

将上面<url>的ip地址和端口换成自己tomcat服务器的ip和port,/manager/text则不需要改。<username>和<password>根远程tomcat的tomcat-users.xml配置的username和password一致。<path>为项目在服务器的部署路径,如果设置为“/”,则会默认部署到ROOT目录下。

(2)其他插件:

<!-- java编译插件 -->
<plugin>
	<groupId>org.apache.maven.plugins</groupId>
	<artifactId>maven-compiler-plugin</artifactId>
	<version>3.2</version>
	<configuration>
		<source>1.7</source>
		<target>1.7</target>
		<encoding>UTF-8</encoding>
	</configuration>
</plugin>

<!-- 资源文件拷贝插件 -->
<plugin>
	<groupId>org.apache.maven.plugins</groupId>
	<artifactId>maven-resources-plugin</artifactId>
	<version>2.7</version>
	<configuration>
		<testFailureIgnore>true</testFailureIgnore>
		<encoding>UTF-8</encoding>
	</configuration>
</plugin>

3、通过maven命令部署:

tomcat7:deploy    //第一次部署
tomcat7:redeploy    //第二次部署
tomcat7:undeploy    //撤销部署

4、设置部署项目的版本:

在tomcat7-maven-plugin的configuration的path设置为

<path>/test#version</path>    //第一种
<path>/test##version</path>    //第二种

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/114748.html原文链接:https://javaforall.net

(0)
上一篇 2021年9月26日 上午7:00
下一篇 2021年9月26日 上午7:00


相关推荐

  • c++ bind函数

    c++ bind函数头文件 includefunct 前言函数绑定 bind 函数用于把某种形式的参数列表与已知的函数进行绑定 形成新的函数 这种更改已有函数调用模式的做法 就叫函数绑定 需要指出 bind 就是函数适配器 先上实例 includeiostr includefunct usingnamespa

    2026年3月20日
    1
  • Jenkins详细安装与构建部署使用教程[通俗易懂]

    Jenkins详细安装与构建部署使用教程[通俗易懂]     Jenkins是一个开源软件项目,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作,功能包括:1、持续的软件版本发布/测试项目。2、监控外部调用执行的工作。本文使用的Linux:Ubuntu其中JDK、Tomcat、SVN服务器请看这里Ubuntu安装配置JDK、Tomcat、SVN…

    2022年5月14日
    52
  • Nginx 反向代理、负载均衡、页面缓存、URL重写及读写分离具体解释[通俗易懂]

    Nginx 反向代理、负载均衡、页面缓存、URL重写及读写分离具体解释

    2022年2月1日
    57
  • Java取整函数的使用

    在开发中,取整操作使用是很普遍的,所以Java在java.lang.Math类中添加了数字取整方法。在java.lang.Math类中主要包括以下几种取整方法。方法 说明 publicstaticdoubleceil(doublea) 返回大于等于参数的最小整数。 publicstaticdoublefloor(doublea) 返回小于等于参…

    2022年4月8日
    49
  • BoundsChecker 使用方法[通俗易懂]

    1前言我在本文中详细介绍了测试工具NuMegaDevpartner(以下简称NuMega)的使用方法。NuMega是一个动态测试工具,主要应用于白盒测试。该工具的特点是学习简单、使用方便、功能有效。NuMega共有三个独立的子功能——BoundsChecker、TrueCoverage、TrueTime。BoundsChecker为代码检错工具,TrueCoverage为测试覆盖率统计…

    2022年4月8日
    64
  • Django组件_tuxedo中间件

    Django组件_tuxedo中间件什么是Django中间件中间件(Middleware)是一个用来处理Django的请求(Request)和响应(Response)的框架级别的钩子,它是一个轻量、低级别的插件系统,用于在全局范围内改

    2022年8月7日
    9

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号