当前位置: 首页 > news >正文

tomcat创建bat启动,结合任务计划实现自动重启tomcat服务 - 详解

1,创建XXX项目启动.bat,修改tomcat服务名以及日志地址

@echo off
:: 设置服务名(根据你的实际情况修改)
set SERVICE_NAME=Tomcat8

:: 日志文件路径(确保目录存在)
set LOG_FILE=D:\tomcat7\logs\restart.log

:: 获取当前时间
for /f "tokens=1-4 delims=/ " %%a in ('date /t') do (
for /f "tokens=1-3 delims=: " %%x in ('time /t') do (
set CURRENT_TIME=%%a %%b %%c %%x:%%y
)
)

:: 写入日志函数
echo [INFO] %CURRENT_TIME% - 开始执行重启任务 >> "%LOG_FILE%"

:: 查询服务状态
sc query "%SERVICE_NAME%" | findstr /i "RUNNING" >nul 2>&1
if %errorlevel% == 0 (
echo [INFO] %CURRENT_TIME% - 服务 %SERVICE_NAME% 正在运行,准备停止... >> "%LOG_FILE%"
net stop "%SERVICE_NAME%" >> "%LOG_FILE%" 2>&1
if %errorlevel% == 0 (
echo [INFO] %CURRENT_TIME% - 服务已成功停止 >> "%LOG_FILE%"
) else (
echo [ERROR] %CURRENT_TIME% - 停止服务失败,请检查! >> "%LOG_FILE%"
)
timeout /t 10 >nul
) else (
sc query "%SERVICE_NAME%" | findstr /i "STOPPED" >nul 2>&1
if %errorlevel% == 0 (
echo [INFO] %CURRENT_TIME% - 服务 %SERVICE_NAME% 已停止,跳过关闭步骤 >> "%LOG_FILE%"
) else (
echo [WARN] %CURRENT_TIME% - 服务 %SERVICE_NAME% 状态未知(可能未安装或禁用) >> "%LOG_FILE%"
)
)

:: 启动服务
sc query "%SERVICE_NAME%" | findstr /i "STOPPED" >nul 2>&1
if %errorlevel% == 0 (
echo [INFO] %CURRENT_TIME% - 正在启动服务 %SERVICE_NAME%... >> "%LOG_FILE%"
net start "%SERVICE_NAME%" >> "%LOG_FILE%" 2>&1
if %errorlevel% == 0 (
echo [INFO] %CURRENT_TIME% - 服务 %SERVICE_NAME% 启动成功 >> "%LOG_FILE%"
) else (
echo [ERROR] %CURRENT_TIME% - 启动服务失败,请检查服务配置 >> "%LOG_FILE%"
)
) else (
echo [INFO] %CURRENT_TIME% - 服务 %SERVICE_NAME% 已经在运行或状态异常,跳过启动 >> "%LOG_FILE%"
)

echo [DONE] %CURRENT_TIME% - 重启任务执行完毕 >> "%LOG_FILE%"
echo -------------------------------------------------- >> "%LOG_FILE%"

2,结合任务调度计划,实现定时重启tomcat,任务调度参考地址:

http://www.jsqmd.com/news/6357/

相关文章:

  • 如何从安卓手机恢复手机照相机消失的相机照片?(6个高效办法)
  • Chromium V8类型混淆漏洞CVE-2025-10585安全分析
  • US$47.5 B48 MSV90 ISN Reading via OBD Authorization for Yanhua Mini ACDP
  • Claude 4.5 刚刚发布,能连肝 30 多个小时,史上最卷 AI 诞生
  • 香橙派5pro驱动开发(一)
  • Python 脚本遇到 SSL 证书问题
  • 构建用户-物品-场景的“关系宇宙 - 教程
  • sa-token开发时遇到的问题
  • HR如何摆脱入离职事务性内耗?组织管理系统助力聚焦人才价值挖掘
  • 里克尔梅张 重庆最好的古典前腰
  • 基于SpringAI构建大模型应用
  • C# TCP - 串口转发 - 实践
  • Java EE初阶启程记04---线程的状态 - 实践
  • US$44 YH Remote Key Tester Frequency/Infrared IR
  • 【星海出品】RabbitMQ 死信 - 教程
  • 【研发规范】Git 提交(commit)、CodeReview规范
  • Windows 11 局域网打印机共享设置
  • DailyPaper-2025-9-29
  • MySQL版本选择
  • gpd winmax2 fedora42 睡眠秒唤醒问题
  • 国企人力资源管理系统怎么选?内行人推荐这8款,功能、服务双保障
  • linux查询磁盘空间,查询指定目录的空间 df命令
  • milvus使用的etcd空间整理
  • k8s使用的etcd空间清理
  • MyBatis 与 JPA 的核心对比
  • 完整教程:Redis 提供了两种主要的持久化机制:RDB 和 AOF
  • 本土化战略赋能:Gitee如何领跑中国DevOps黄金赛道
  • 打印机错误0x0000709,问题排查和修复指南
  • 2025.9.29 测试
  • 深度学习(CVAE)