- profiles.active 默认 local(不连 nacos);CI 注入 SPRING_PROFILES_ACTIVE=prod - nacos config.enabled 默认 false,仅 CI 注入 NACOS_CONFIG_ENABLED=true 时启用 - 凭据改用顶层 SPRING_CLOUD_NACOS_* 环境变量(原写在 config.* 下导致 403) - 调整 shared-configs 加载顺序与 namespace/group,并补充项目排查记忆
21 lines
2.0 KiB
Markdown
21 lines
2.0 KiB
Markdown
# 2026-08-12
|
||
|
||
## 项目:bschclassmanage(原 classicalchinese 重构)
|
||
|
||
### 包重命名(17:18 左右)
|
||
- 根包由 `com.bestsch.bschclassmanage` 重命名为 `com.yunhai.bschclassmanage`(git mv 目录 + 255 文件 package/import 替换,共 1064 处)。
|
||
- pom.xml 设 `<groupId>com.yunhai</groupId>` 对齐。
|
||
- 注意:`bschclassmanage.iml` 中的 `com.bestsch:bsch-*` 是外部依赖坐标(bsch-sso / bsch-spring-boot-starter 等),**不能改**。
|
||
- 环境无 maven(mvnw wrapper 缺 .mvn/wrapper 配置),无法本地编译验证;改用「package 声明 vs 目录路径」脚本校验,255 文件全部一致。
|
||
|
||
### 已修复的三类启动/路由问题
|
||
1. **CORS 启动失败**:Spring Boot 2.7.18 (Spring 5.3) 校验 `allowCredentials=true` 时 `allowedOrigins` 不能含 `*`。已将 23 个 Controller 的 `@CrossOrigin(origins={"*","*"}, allowCredentials="true")` 改为 `originPatterns={"*"}`。
|
||
2. **/api/* 与 /oapi/* 接口 404**:`Config.API_PATH="/api/"` 与 `Config.OAPI="/oapi/"` 常量尾部带斜杠,拼接 `API_PATH+"/subject/"` 产生 `/api//subject/`(双斜杠)。Spring Boot 2.7 默认 PathPatternParser 不折叠双斜杠导致匹配失败。已将常量尾斜杠去掉(`/api`、`/oapi`、`/mobiapi`)。`LoginUserController` 单独用 `Config.API_PATH` 无拼接故正常。
|
||
3. **currentrole 取不到(500/NPE)**:`UserSysRoleArgumentResolver` 原只从请求头 `currentrole` 取身份 JSON(childId/roleId/schId),URL 参数被忽略导致 `curRole` 为 null。已改为「Header 优先,查不到退回 URL 参数 currentrole」,便于本地调试,生产仍走 Header。
|
||
|
||
### Git
|
||
- 提交 `66cd0f1`:包重命名为 `com.yunhai.bschclassmanage`,含以上修复。
|
||
- 远程 origin 指向 `http://gitea.yunhaixingtong.com/wanghu/BSChClassManage.git`(原 classicalchinese 旧地址已替换)。
|
||
- 已 `git push -u origin master` 成功。本地仓库级身份:Allen <allen@yunhaixingtong.com>。
|
||
- 注意:gitea http push 需账号密码;URL 中 `&` 须编码为 `%26`。
|