- 新增SysUserController.listUsersByPermission接口 - 新增SysUserService.selectUserListByPermission方法 - 支持多租户和权限关联查询 - 更新变更记录文档
196 lines
4.1 KiB
Markdown
196 lines
4.1 KiB
Markdown
# 后端服务启动脚本使用说明
|
|
|
|
## 📋 脚本概述
|
|
|
|
`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 |