- 新增SysUserController.listUsersByPermission接口 - 新增SysUserService.selectUserListByPermission方法 - 支持多租户和权限关联查询 - 更新变更记录文档
4.1 KiB
4.1 KiB
后端服务启动脚本使用说明
📋 脚本概述
start-backend.sh 是一个自动化的后端服务启动脚本,按顺序执行以下操作:
- Maven项目清理 (
mvn clean) - Maven项目编译安装 (
mvn install) - 启动监控服务 (
./start-monitor.sh) - 启动任务调度服务 (
./start-job.sh) - 热启动主服务 (
./hot-start.sh)
🚀 使用方法
基本使用
# 在项目根目录下执行
./start-backend.sh
首次使用
# 1. 确保脚本有执行权限
chmod +x start-backend.sh
# 2. 执行启动脚本
./start-backend.sh
📁 目录要求
脚本必须在项目根目录下执行,目录结构应该如下:
project-root/
├── start-backend.sh # 启动脚本
├── backend/ # 后端项目目录
│ ├── pom.xml # Maven配置文件
│ ├── start-monitor.sh # 监控服务启动脚本
│ ├── start-job.sh # 任务调度服务启动脚本
│ ├── hot-start.sh # 热启动脚本
│ └── ... # 其他后端文件
└── logs/ # 日志目录(自动创建)
📊 执行流程
正常执行流程
[STEP 1] Maven清理项目
↓ 成功
[STEP 2] Maven编译安装项目
↓ 成功
[STEP 3] 启动监控服务
↓ 成功
[STEP 4] 启动任务调度服务
↓ 成功
[STEP 5] 热启动主服务
↓ 成功
🎉 所有服务启动完成
错误处理流程
- 任何一步失败,脚本立即停止执行
- 详细错误信息记录在日志文件中
- 控制台显示彩色错误提示
📝 日志管理
日志文件位置
logs/backend-startup-YYYYMMDD-HHMMSS.log
日志文件示例
logs/backend-startup-20250112-143022.log
日志内容
- 每个步骤的执行时间
- 命令输出和错误信息
- 执行耗时统计
- 错误码和工作目录信息
🎨 输出特色
彩色控制台输出
- 🔵 蓝色: 步骤标识
[STEP X] - 🟢 绿色: 正常信息
[INFO] - 🟡 黄色: 警告信息
[WARN] - 🔴 红色: 错误信息
[ERROR]
执行时间统计
每个步骤都会显示执行耗时:
✅ Maven清理项目 执行成功 (耗时: 15秒)
✅ Maven编译安装项目 执行成功 (耗时: 120秒)
⚠️ 注意事项
环境要求
- Java: JDK 17/21
- Maven: 3.6+
- 操作系统: Linux/macOS/WSL
- 权限: 脚本执行权限
前置条件
- 确保Maven已正确配置
- 确保所有子脚本存在且有执行权限:
ls -la backend/*.sh # 应该显示: # -rwxr-xr-x ... start-monitor.sh # -rwxr-xr-x ... start-job.sh # -rwxr-xr-x ... hot-start.sh
常见问题
-
权限问题
chmod +x start-backend.sh chmod +x backend/*.sh -
目录问题
# 确保在项目根目录执行 pwd # 应该显示项目根目录路径 ls # 应该能看到 backend/ 目录 -
Maven问题
# 检查Maven配置 mvn -version cd backend && mvn validate
🔧 自定义配置
修改日志目录
编辑脚本中的 LOG_DIR 变量:
LOG_DIR="custom-logs" # 默认: "logs"
修改后端目录
编辑脚本中的 BACKEND_DIR 变量:
BACKEND_DIR="custom-backend" # 默认: "backend"
📈 故障排除
查看详细日志
# 查看最新的日志文件
ls -la logs/backend-startup-*.log | tail -1
# 实时查看日志
tail -f logs/backend-startup-$(date +%Y%m%d)-*.log
手动执行步骤
如果脚本失败,可以手动执行每个步骤:
cd backend
mvn clean
mvn install
./start-monitor.sh
./start-job.sh
./hot-start.sh
检查服务状态
# 检查Java进程
ps aux | grep java
# 检查端口占用
netstat -tlnp | grep :8080
📞 技术支持
如果遇到问题:
- 查看日志文件中的错误信息
- 检查环境配置和权限
- 手动执行失败的步骤
- 联系开发团队寻求支持
最后更新: 2025-01-12
脚本版本: V1.0.0
兼容系统: Linux/macOS/WSL