58 lines
1.8 KiB
Markdown
58 lines
1.8 KiB
Markdown
# 后端服务重启指南
|
|
|
|
## 问题说明
|
|
修改了 `MartialScheduleArrangeServiceImpl.java` 文件添加了空值检查,需要重启后端服务以加载新代码。
|
|
|
|
## 修改的文件
|
|
- `src/main/java/org/springblade/modules/martial/service/impl/MartialScheduleArrangeServiceImpl.java`
|
|
- 第 394-398 行:集体项目空值检查
|
|
- 第 430-434 行:个人项目空值检查
|
|
|
|
## 重启步骤
|
|
|
|
### 1. 停止当前运行的后端服务
|
|
在当前运行后端服务的命令行窗口中按 `Ctrl+C` 停止服务。
|
|
|
|
### 2. 重新编译项目(可选,推荐)
|
|
```bash
|
|
cd D:\workspace\31.比赛项目\project\martial-master
|
|
mvn clean compile
|
|
```
|
|
|
|
### 3. 重启后端服务
|
|
使用之前启动后端的相同命令重新启动。通常是以下之一:
|
|
|
|
**选项A - 使用 Maven 直接运行:**
|
|
```bash
|
|
mvn spring-boot:run
|
|
```
|
|
|
|
**选项B - 使用已打包的 JAR 文件:**
|
|
```bash
|
|
java -jar target/blade-martial-*.jar
|
|
```
|
|
|
|
**选项C - 在 IDE (如 IntelliJ IDEA 或 Eclipse) 中:**
|
|
右键点击主类 `Application.java` → Run
|
|
|
|
### 4. 验证服务启动成功
|
|
等待服务启动完成(看到类似 "Started Application in X seconds" 的日志)。
|
|
|
|
### 5. 重新测试 API
|
|
```bash
|
|
curl -X POST "http://localhost:8123/martial/schedule/auto-arrange" -H "Content-Type: application/json" -d "{\"competitionId\": 200}"
|
|
```
|
|
|
|
## 预期结果
|
|
修复后应该不再出现 NPE 错误,会返回以下情况之一:
|
|
1. **成功**: `{"code":200,"success":true,...}` - 自动编排成功
|
|
2. **警告日志**: 后端日志中会显示 "项目不存在, projectId: XXX, 跳过该分组" 如果有参赛者关联了不存在的项目
|
|
|
|
## 如果仍有问题
|
|
请执行数据验证脚本检查数据完整性:
|
|
```bash
|
|
mysql -uroot -proot123 martial_db < database/martial-db/debug_check.sql
|
|
```
|
|
|
|
查看是否所有参赛者都有有效的 project_id 关联。
|