# 生产后端重启脚本实施记录

## 修改内容
- 收敛生产后端重启脚本 `bin/prod/restart_java.sh`
- 脚本固定面向已部署的 `backend/ruoyi-admin.jar` 执行启停，不再包含构建逻辑
- 后端启动 profile 固定为 `pro`
- Java 路径统一为 `/home/webapp/env/java/bin/java`，与现有生产安装脚本保持一致
- 移除 `root` 执行校验与端口监听校验，只保留 `start|stop|restart|status` 所需的最小启停逻辑
- 新增脚本自测文件 `bin/prod/restart_java_test.sh`

## 实现说明
- `start` 仅检查 Java 可执行文件、目标 jar 是否存在以及当前是否已有同脚本托管进程
- `stop` 继续基于 PID 文件和 `-Dloan.pricing.home=/home/webapp/loan-pricing` 进程标记识别并停止当前后端进程
- `restart` 按“先停后起”执行，适用于生产环境已部署 jar 的直接重启
- `status` 仅返回脚本托管进程状态，不再增加端口占用类附加判断

## 验证结果
- 已执行 `sh bin/prod/restart_java_test.sh`
- 已验证以下场景：
  - 脚本固定使用 `/home/webapp/env/java`
  - 脚本固定使用 `--spring.profiles.active=pro`
  - 脚本不包含 `mvn`、`require_root`、`ss/lsof/netstat` 相关依赖
  - `start -> status -> restart -> stop` 流程执行通过
- 自测使用临时目录中的假 `java` 进程完成，测试结束后已自动清理对应进程和临时目录
