# 后端服务启动脚本使用说明 ## 📋 脚本概述 `start-backend.sh` 是一个自动化的后端服务启动脚本,按顺序执行以下操作: 1. Maven项目清理 (`mvn clean`) 2. Maven项目编译安装 (`mvn install`) 3. 启动监控服务 (`./start-monitor.sh`) 4. 启动任务调度服务 (`./start-job.sh`) 5. 热启动主服务 (`./hot-start.sh`) ## 🚀 使用方法 ### 基本使用 ```bash # 在项目根目录下执行 ./start-backend.sh ``` ### 首次使用 ```bash # 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 - **权限**: 脚本执行权限 ### 前置条件 1. 确保Maven已正确配置 2. 确保所有子脚本存在且有执行权限: ```bash ls -la backend/*.sh # 应该显示: # -rwxr-xr-x ... start-monitor.sh # -rwxr-xr-x ... start-job.sh # -rwxr-xr-x ... hot-start.sh ``` ### 常见问题 1. **权限问题** ```bash chmod +x start-backend.sh chmod +x backend/*.sh ``` 2. **目录问题** ```bash # 确保在项目根目录执行 pwd # 应该显示项目根目录路径 ls # 应该能看到 backend/ 目录 ``` 3. **Maven问题** ```bash # 检查Maven配置 mvn -version cd backend && mvn validate ``` ## 🔧 自定义配置 ### 修改日志目录 编辑脚本中的 `LOG_DIR` 变量: ```bash LOG_DIR="custom-logs" # 默认: "logs" ``` ### 修改后端目录 编辑脚本中的 `BACKEND_DIR` 变量: ```bash BACKEND_DIR="custom-backend" # 默认: "backend" ``` ## 📈 故障排除 ### 查看详细日志 ```bash # 查看最新的日志文件 ls -la logs/backend-startup-*.log | tail -1 # 实时查看日志 tail -f logs/backend-startup-$(date +%Y%m%d)-*.log ``` ### 手动执行步骤 如果脚本失败,可以手动执行每个步骤: ```bash cd backend mvn clean mvn install ./start-monitor.sh ./start-job.sh ./hot-start.sh ``` ### 检查服务状态 ```bash # 检查Java进程 ps aux | grep java # 检查端口占用 netstat -tlnp | grep :8080 ``` ## 📞 技术支持 如果遇到问题: 1. 查看日志文件中的错误信息 2. 检查环境配置和权限 3. 手动执行失败的步骤 4. 联系开发团队寻求支持 --- **最后更新**: 2025-01-12 **脚本版本**: V1.0.0 **兼容系统**: Linux/macOS/WSL