日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

java web自动化部署_JavaWeb项目自动化部署脚本

發(fā)布時間:2025/4/5 java 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java web自动化部署_JavaWeb项目自动化部署脚本 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

腳本如下:

#!/bin/bash

echo?===============================

echo?????auto?deployment?script

echo?===============================

project_home=/home/shawock/projectA

tomcat_home=/home/shawock/tomcat

war_file_name=projectA-0.0.1-SNAPSHOT.war

#?update?to?specified?revision

echo?do?svn?update...

cd?$project_home

svn?update

#?package?project?into?war?file

echo?do?mvn?package...

mvn?clean?package?-Dmaven.test.skip=true

if?[?$??-eq?0?];then

#?kill?tomcat?process

for?i?in?`jps|grep?Bootstrap|awk?'{print?$1}'`

do

echo?kill?tomcat?process?--?$i?successfully!

kill?-9?$i

done

#?bakup?and?rename?old?war?file

cd?$tomcat_home/webapps

if?[?-f?ROOT.war?];then

echo?backup?the?old?war?file

currentTime=$(date?"+%Y%m%d%H%M%S")

mv?ROOT.war?$tomcat_home/backup/ROOT_${currentTime}.war

fi

#?upload?the?latest?war?to?webapps

echo?upload?the?latest?war?to?webapps...

rm?-rf?$tomcat_home/webapps/*

cp?$project_home/target/$war_file_name?$tomcat_home/webapps/ROOT.war

#?restart?tomcat

echo?restart?tomcat...

$tomcat_home/bin/startup.sh

tail?-f?$tomcat_home/logs/catalina.out

fi

思考:項目的打包依賴于服務(wù)器端配置svn和maven,這樣其實是非常不合理的。應(yīng)該向服務(wù)器上傳已經(jīng)打好的包?可以使用sftp等命令行。

【擴展】 在shell中判斷maven命令是否執(zhí)行成功

1. 用退出碼判斷

#!/bin/bash

project_dir=/home/shawock/demo_project

cd?$project_dir

#?package?project?into?jar?file

echo?do?mvn?clean?package...

mvn?clean?package?-Dmaven.test.skip=true

if?[?$??-eq?0?];then

echo?mvn?packaging?successfully

else

echo?mvn?packaging?fail

fi

2. 從maven執(zhí)行的結(jié)果中查找關(guān)鍵字

#!/bin/bash

project_dir=/home/shawock/demo_project

cd?$project_dir

#?package?project?into?jar?file

echo?do?mvn?clean?package...

mvn?clean?package?-Dmaven.test.skip=true|tee?mvnresult

output=`cat?mvnresult`

if?[[?$output?=~?"BUILD?SUCCESS"?]];then

echo?mvn?packaging?successfully

else

echo?mvn?packaging?fail

fi

rm?-rf?$project_dir/mvnresult

《新程序員》:云原生和全面數(shù)字化實踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結(jié)

以上是生活随笔為你收集整理的java web自动化部署_JavaWeb项目自动化部署脚本的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。