Mavenプラグインwagon-maven-pluginを使用してデプロイを自動化します

プロジェクト開発の過程で、開発環境にコードをデプロイする必要があることがよくあります。1日に何度も発生する可能性があり、毎回mvnクリーンインストールが必要になり、サーバーにアップロードされます。実際、これらの面倒な手順は、Mavenプラグインwagon-maven-pluginによって自動的に完了することができます。

Linuxサーバーのユーザー名とパスワードの構成
wagon-maven-pluginプラグインがSSH経由でLinuxサーバーに接続するには、最初にプロジェクトpom.xmlでサーバーのユーザー名とパスワードを構成する必要があります。

<properties>
		<!--wagon plugin 配置-->
		<service-path>/work/renren</service-path>
		<pack-name>${project.artifactId}-${project.version}.jar</pack-name>
		<remote-addr>192.168.1.1:22</remote-addr>
		<remote-username>root</remote-username>
		<remote-passwd>123456</remote-passwd>
	</properties>

ファイルをサーバーにアップロードし、
Mavenプロジェクトを再起動します。mvnpackageコマンドを使用してパッケージ化できます。パッケージが完了すると、パッケージはターゲットディレクトリに配置されます。リモートサーバーにデプロイする場合は、最初にパッケージをサーバーにアップロードします。プロジェクトのpom.xmlでwagon-maven-pluginプラグインを構成します。

<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>wagon-maven-plugin</artifactId>
				<version>1.0</version>
				<configuration>
					<fromFile>target/${pack-name}</fromFile>
					<url><![CDATA[scp://${remote-username}:${remote-passwd}@${remote-addr}${service-path}]]></url>
					<commands>
						<!-- Kill Old Process -->
						<command>kill -9 `ps -ef |grep ${project.artifactId}.jar|grep -v "grep" |awk '{print $2}'`</command>
						<!-- Restart jar package,write result into renren.log -->
						<command><![CDATA[nohup java -jar ${service-path}/${pack-name} --spring.profiles.active=test > ${service-path}/test.log 2>&1 & ]]></command>
						<command><![CDATA[netstat -nptl]]></command>
						<command><![CDATA[ps -ef | grep java | grep -v grep]]></command>
					</commands>
					<!-- 运行命令 mvn clean package wagon:upload-single wagon:sshexec-->
					<displayCommandOutputs>true</displayCommandOutputs>
				</configuration>
			</plugin>
配置完成后,运行命令:mvn clean package wagon:upload-single wagon:sshexec

おすすめ

転載: blog.csdn.net/qq_37980436/article/details/105812671