2.3 KiB
2.3 KiB
Java后端一键重启脚本实施记录
修改目标
- 新增一个可直接在仓库内执行的后端重启脚本
- 脚本需支持重启前自动执行
mvn -pl ruoyi-admin -am clean package -DskipTests - 重启完成后持续输出后端运行日志,便于直接观察启动结果和后续日志
修改内容
- 新增
bin/restart_java_backend.sh- 默认执行
restart动作,无参即可触发一键重启 - 重启流程固定为“先构建,后停机,再启动”
- 停机时同时兼容端口
62318和ruoyi-admin.jar关键字识别 - 启动时改为参考
bin/run.bat,切换到ruoyi-admin/target/后后台执行java -jar ruoyi-admin.jar - 启动日志统一落到仓库根目录
logs/backend-console.log - 启动后以前台
tail -F持续输出控制台日志,便于直接查看 - 保留
start、stop、restart、status四个动作,便于和现有ry.sh使用习惯保持一致
- 默认执行
- 新增
docs/tests/scripts/test-restart-java-backend.sh- 回归检查脚本是否切换到
ruoyi-admin/target并使用java -jar ruoyi-admin.jar启动 - 防止后续再次回退到
spring-boot:run启动链路
- 回归检查脚本是否切换到
验证记录
- 执行
sh docs/tests/scripts/test-restart-java-backend.sh- 结果:通过,已校验脚本使用
java -jar启动打包产物
- 结果:通过,已校验脚本使用
- 执行
sh -n bin/restart_java_backend.sh- 结果:通过,脚本语法正确
- 执行
sh bin/restart_java_backend.sh restart- 结果:通过,构建完成后在
ruoyi-admin/target内触发java -jar ruoyi-admin.jar - 关键日志:
Starting RuoYiApplication using Java 21.0.9 with PID ... (/Users/wkc/Desktop/ccdi/ccdi/ruoyi-admin/target/ruoyi-admin.jar started by wkc in /Users/wkc/Desktop/ccdi/ccdi/ruoyi-admin/target)Started RuoYiApplication in 7.457 seconds
- 进程核验:
java -Duser.timezone=Asia/Shanghai -Xms512m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m -XX:+HeapDumpOnOutOfMemoryError -jar ruoyi-admin.jar
- 结果:通过,构建完成后在
- 执行
sh bin/restart_java_backend.sh stop- 结果:测试完成后已停止本次验证拉起的后端进程,避免残留端口占用
影响范围
- 新增本地运维辅助脚本,不修改现有 Java 业务代码
- 日志新增输出文件:
logs/backend-console.log - 不影响前端、数据库和 Mock 服务逻辑