@echo off
title Tomcat 自动更新部署脚本
rem @author Clay
rem
rem 操作步骤:
rem 1. netstat 命令查看当前Tomcat是否启动,进行关闭
rem 2. xcopy 命令进行备份
rem 3. 删除旧包以及检测是否包含.war一并删除
rem 4. jar 命令将新包解压到webapps目录,并删除.war
rem 5. 替换配置文件
rem 6. 启动Tomcat
rem 7. curl 命令监听请求状态码是否为 200 (https://curl.se/download.html %CURL_HOME%\bin)
rem 8. 在步骤 3. 之后的操作如遇到异常直接进行回滚并执行 1. 6.
rem 重要说明:
rem **必须保证 bin\startup.bat bin\shutdown.bat 能正常运行!**
rem -------------------------手动修改 开始-------------------------
rem ***请注意系统如果没有配置jdk的环境变量请在这里设置,否则解压war包会失败!***
set path=D:\Java\jdk1.8.0_241\bin;%path%
rem Tomcat根目录
set tomcat_root_dir=D:\Tomcat\Tomcat7777
rem 端口号
set tomcat_port=7777
rem 项目目录
set webapps_dir_name=webapps
rem 项目名
set project_name=ROOT
rem 注:这里的地址要项目能返回 HTTP/1.× 200 的地址,cmd测试:curl -I -m 5 http://127.0.0.1:8080/login
set heartbeat_site=http://127.0.0.1:7777/login
rem 备份路径
set project_backup=D:\Tomcat\Tomcat7777\project_backup
rem 升级包路径
set upd_package=C:\Users\Administrator\Desktop\school-1.5.4.war
rem 配置文件路径 **多个配置文件参考下面注释内容**
set properties[0]=WEB-INF\classes\application.yml
rem set properties[1]=WEB-INF\classes\application.yml
rem set properties[2]=WEB-INF\classes\application2.yml
rem -------------------------手动修改 结束-------------------------
rem 手工指定更新包(将下面的rem去掉,每次启动脚本都要输入更新包的路径)
set/p upd_package=请输入更新包路径(包含文件名):
echo %date% %time%
rem 开启变量延迟的设置 ** !errorlevel! 失效, 修改为 !errorlevel!
setlocal enabledelayedexpansion
set "properties_x=0"
:SymLoop
if defined properties[%properties_x%] (
set /a "properties_x+=1"
GOTO :SymLoop
)
set /a "properties_x-=1"
rem 防止手工拖入的war更新包带有双引号
set "upd_package=%upd_package:"=%"
set "upd_package=!upd_package:"=!"
rem 组合项目根目录
set project_path=%tomcat_root_dir%\%webapps_dir_name%\%project_name%\
rem 检测项目是否部署成功
set rollBack=0
echo =========================参数输出=========================
echo Tomcat根目录:%tomcat_root_dir%
echo Tomcat端口号:%tomcat_port%
echo 项目目录:%webapps_dir_name%
echo 项目名:%project_name%
echo 备份文件夹:%project_backup%
echo 项目路径:%project_path%
if not exist "%project_path%" (
echo .
echo ××××××××××××××××××项目路径不存在!×××××××××××××××××××××
pause
exit
)
if not exist "%upd_package%" (
echo .
echo ×××××××××××××××××××更新包不存在!××××××××××××××××××××××
pause
exit
)
echo ===
Windows环境Tomcat自动部署脚本 .bat脚本
最新推荐文章于 2024-08-08 08:06:33 发布
本文详细介绍了如何在Windows操作系统中创建一个.bat批处理脚本,用于自动化Tomcat应用的部署过程。通过该脚本,可以实现便捷、高效地更新和管理应用程序,提高开发和运维效率。
摘要由CSDN通过智能技术生成