mcpField
S
springboot-migration

springboot-migration

github.com/a-pavithraa开发8089 次安装今天更新
代码仓库

关于 springboot-migration

面向需要升级现有 Spring Boot 应用的团队的迁移 skill。它扫描项目文件、选择适用的迁移指南,并要求分阶段修改、逐阶段验证。

主要功能

  1. 01扫描构建文件和源代码
  2. 02识别适用的迁移任务
  3. 03提供 Boot、Modulith 和 Testcontainers 指南
  4. 04按阶段安排变更
  5. 05每个阶段后验证进展

适用场景

  1. 01评估现有 Spring Boot 项目
  2. 02规划相关依赖的升级
  3. 03继续前验证当前迁移阶段

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/a-pavithraa/springboot-skills-marketplace --skill springboot-migration

安装后在 Claude Code 中输入/springboot-migration确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
migration-overview.md
spring-boot-4-migration.md
spring-modulith-2-migration.md
testcontainers-2-migration.md
scripts/
scan_migration_issues.py

详细介绍

Spring Boot 迁移

目的

在对现有 Spring Boot 应用进行分阶段升级时使用此技能。此技能通过迁移扫描器、Boot 4 / Modulith 2 / Testcontainers 2 参考指南,以及避免一次混入过多更改的严格迁移顺序来提供价值。

关键规则

  • 切勿盲目迁移。先扫描代码库。
  • 切勿一次性应用所有迁移。请按阶段升级。
  • 除非用户要求更窄的目标,否则将 Spring Boot 4、Spring Modulith 2 和 Testcontainers 2 视为此技能的预期目标技术栈。Boot 4 的 Java 基线版本为 17;对于新的编译目标,建议使用 Java 25,但不要强制升级到迁移实际要求之外的版本。
  • 每个阶段后都要验证,出现失败时立即停止。

工作流

第 1 步:扫描项目

在规划或编辑之前,先使用迁移扫描器。它会读取项目中的 pom.xml、build.gradle 或 build.gradle.kts(以项目实际使用的为准),以及 Java 源文件、属性文件和 Flyway 迁移文件:

python3 "${CLAUDE_SKILL_DIR}/scripts/scan_migration_issues.py" /path/to/project

使用扫描结果识别:

  • 当前 Spring Boot 版本
  • starter 重命名工作
  • 注解和导入迁移
  • 配置更改
  • Spring Modulith 兼容性
  • Testcontainers 兼容性
第 2 步:确定适用的迁移

仅加载与代码库匹配的参考资料:

迁移触发条件阅读
Spring Boot 4.0从 Boot 3.x 升级到 4.xreferences/spring-boot-4-migration.md
Spring Modulith 2.0已有 Modulith 1.x 用法references/spring-modulith-2-migration.md
Testcontainers 2.x已有 Testcontainers 1.x 用法references/testcontainers-2-migration.md
跨领域场景和注意事项混合升级规划references/migration-overview.md
第 3 步:分阶段规划迁移

使用参考指南按以下顺序规划并执行迁移。

阶段 1:依赖项
  • 更新 pom.xml 或 build.gradle
  • 按需重命名 starter
  • 添加或移除目标技术栈所需的依赖项
  • 统一版本属性
阶段 2:源代码更改
  • 更新导入和包名
  • 迁移测试注解
  • 修复 Jackson 3 问题
  • 视情况修复 Testcontainers API 更改
阶段 3:配置
  • 更新 application.properties 或 application.yml
  • 有意采用 Boot 4 默认设置
  • 视情况更新 Spring Modulith 事件存储配置
阶段 4:验证
  • 运行单元测试
  • 运行集成测试
  • 运行已有的基于容器的测试
  • 检查弃用项和启动失败
第 4 步:混合升级时采用正确的迁移顺序

涉及多个生态时,请按以下顺序进行:

  1. Spring Boot 4
  2. Spring Modulith 2
  3. Testcontainers 2

若要偏离此顺序,请先阅读 references/migration-overview.md。

第 5 步:每个阶段后报告进度

每个阶段结束后,报告:

  • 已更改的内容
  • 尚未完成的内容
  • 失败情况(如有)
  • 是否可以安全继续

参考资料加载指南

  • Spring Boot 4 迁移详情:references/spring-boot-4-migration.md
  • Spring Modulith 2 迁移详情:references/spring-modulith-2-migration.md
  • Testcontainers 2 迁移详情:references/testcontainers-2-migration.md
  • 混合场景和常见问题:references/migration-overview.md

可用脚本

  • scripts/scan_migration_issues.py

输出格式

规划或报告迁移时,请按以下格式返回:

## Migration scope
- Current versions:
- Target versions:

## Planned phases
1. ...
2. ...
3. ...

## Files expected to change
- `path/to/file`

## Verification
- Tests or checks to run

不适用此技能的情况

  • 从零创建新的 Spring Boot 项目
  • 不涉及实际迁移任务的宽泛架构建议
  • 属于 spring-data-jpa 范畴的 JPA 专项实现工作

评论

支持 Markdown