一鍵解決從Myeclipse工程打包JavaWeb項目到服務器的Tomcat,並自動部署


項目組用Myeclipse開發一個JavaWeb項目,每天都要發布新版本到測試服務器的Tomcat。每次都要先導出WAR包,然后上傳到服務器指定目錄,接着遠程登錄到服務器上停止Tomcat,刪除Tomcat的日志文件、臨時文件,webapps下的老的WAR包,然后拷貝新的WAR包至webapps,接着再重啟Tomcat。每天都干這個事覺得很繁瑣,所以寫了一套批處理,每天發布時只要雙擊一個bat文件,就全自動搞定上述過程!

cd C:UsersfhWorkspaces"MyEclipse 9"Tradeweb
del /s /q Trade.war
jar -cvf Trade.war *

::del /s /q \192.168.0.180c$fhTrade.war
::xcopy C:UsersfhWorkspaces"MyEclipse 9"TradewebTrade.war \192.168.0.180c$fh

Rem 本來是用共享目錄方式下載/刪除服務器指定目錄的WAR包,但發現此法有時候受網絡影響,不穩定;所以改成ftp方式
ftp -s:C:UsersfhDesktopserver180.ftp -A

Rem 調用遠程服務,遠程部署並重啟Tomcat服務器
start cmd.exe ::啟動一個 CMD 終端
cscript //nologo C:UsersfhDesktoptelnet-192.168.0.180.vbs ::調用腳本文件

echo 60秒以后,嘗試訪問可能已經啟動完畢后的系統
for /l %%a in (60,-1,0) do ping -n 2 127.1>nul&cls&echo %%a

explorer.exe http://192.168.0.180/Trade/login.jsp
open 192.168.0.180
binary
cd /
delete Trade.war
put C:UsersfhWorkspaces"MyEclipse 9"TradewebTrade.war
bye
set sh=WScript.CreateObject("WScript.Shell")
WScript.Sleep 1000
sh.SendKeys"telnet.exe 192.168.0.180{ENTER}"'執行的命令,字符 “~”代表回車
WScript.Sleep 1000 '延遲 1000
sh.SendKeys"y{ENTER}"
WScript.Sleep 1000 
sh.SendKeys"administrator{ENTER}"
WScript.Sleep 1000
sh.SendKeys"db2admin{ENTER}"
WScript.Sleep 1000
sh.SendKeys"cd{ENTER}"
sh.SendKeys"cd fh{ENTER}"
sh.SendKeys"deploy.bat{ENTER}"
WScript.Sleep 1000
@echo off
Rem --------現在開始執行服務器端的deploy.bat文件,重新部署服務器-------------
Rem 停止Tomcat服務器
net stop Tomcat6

echo 等待10秒,讓服務器完全停止下來
for /l %%a in (10,-1,0) do ping -n 2 127.1>nul&cls&echo %%a

Rem 刪除Tomcat目錄中的webapps/Trade.war、Trade文件夾, logs/*.log 、 logs/trade 、work/Catalina文件夾
del /s /q C:"Tomcat 6.0"webappsTrade.war
rd /s /q C:"Tomcat 6.0"webappsTrade
del /s /q C:"Tomcat 6.0"logs*.log
del /s /q C:"Tomcat 6.0"logstrade
rd /s /q C:"Tomcat 6.0"workCatalina

Rem 拷貝c:fhTrade.war至Tomcat服務器目錄
xcopy C:fhTrade.war C:"Tomcat 6.0"webapps

Rem 啟動Tomcat服務器
net start Tomcat6


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM