`

工作笔记8 - IDEA用Maven命令在Linux系统下的Tomcat自动部署远程发布应用

阅读更多

因为图方便,不想每次都去登陆服务器,连接ftp上传war包,再重启tomcat服务。

所以研究了下远程发布,用了这些IDEA,JDK1.8,Tomcat9,Maven3

大致步骤如下:

 

1.修改服务器上tomcat路径下的 /conf/tomcat-user.xml文件,改成这个样子(用户名密码自己取)

 

<?xml version="1.0" encoding="UTF-8"?>
<tomcat-users>
  <role rolename="manager-gui"/>
  <role rolename="manager-script"/>
  <user username="admin" password="admin" roles="manager-gui,manager-script"/>
</tomcat-users>

 

2.继续修改服务器上tomcat路径下的/webapps/manager/META-INF/context.xml文件,改成这个样子(主要是注释掉)

 

 

<?xml version="1.0" encoding="UTF-8"?>
<Context antiResourceLocking="false" privileged="true" >
  <!--
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
  <Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
  -->
</Context>

 

 

3.在项目pom中添加组件cargo,如下(对应上面设置的用户名密码)

 

			<plugin>
				<groupId>org.codehaus.cargo</groupId>
				<artifactId>cargo-maven2-plugin</artifactId>
				<version>1.4.13</version>
				<configuration>
					<container>
						<containerId>tomcat7x</containerId>
						<type>remote</type>
					</container>
					<configuration>
						<type>runtime</type>
						<properties>
							<cargo.remote.username>admin</cargo.remote.username>
							<cargo.remote.password>admin</cargo.remote.password>
						</properties>
					</configuration>
				</configuration>
			</plugin>

 

 

4.在IDEA的Edit Configurations里加一个Maven启动,如图

打包命令是:

clean package -Dmaven.test.skip=true cargo:redeploy -X Dcargo.remote.uri=http://133.33.33.333:8080/manager/text

中间的ip是远程服务器的ip,端口是tomcat的端口

 

5.点运行。就是打包要注意一个是打包类型,一个是war包名,都在pom里配的,还有我们连不上服务器用SecureCrt转发才能访问的,刚才命令里的地址要写转发过后的ip和端口.

<artifactId>qualitycontrol</artifactId>
<packaging>war</packaging>
<build>
   <finalName>qualitycontrol</finalName>

 

远程发布就ok啦

  • 大小: 230.7 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics