Skills for creating, testing, reviewing, migrating and guarding Spring Boot 4 projects with Java 25: project scaffolding with architecture patterns, Boot 4 test templates, code review, Boot 3 to 4 migration, and a team harness of build gates and agent hooks.
93%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
Low
Low-risk findings worth noting
Use this skill for phased upgrade work on existing Spring Boot applications. This skill adds value through the migration scanner, the Boot 4 / Modulith 2 / Testcontainers 2 reference guides, and a strict migration order that avoids mixing too many changes at once.
../creating-springboot-projects/references/java-version-policy.md.Use the migration scanner before planning or editing. It reads pom.xml, build.gradle, or build.gradle.kts (whichever the project has) plus Java sources, properties files, and Flyway migrations:
python3 "${CLAUDE_SKILL_DIR}/scripts/scan_migration_issues.py" /path/to/project${CLAUDE_SKILL_DIR} is this skill's folder. Codex doesn't set it, so there use the folder this SKILL.md is in.
Use the scan output to identify:
StableValue, StructuredTaskScope) that break on a newer JDKLoad only the references that match the codebase:
| Migration | Trigger | Read |
|---|---|---|
| Spring Boot 4.0 | Boot 3.x to 4.x upgrade | references/spring-boot-4-migration.md |
| Spring Modulith 2.0 | Existing Modulith 1.x usage | references/spring-modulith-2-migration.md |
| Testcontainers 2.x | Existing Testcontainers 1.x usage | references/testcontainers-2-migration.md |
| Cross-cutting scenarios and pitfalls | Mixed upgrade planning | references/migration-overview.md |
Use the reference guides to plan and execute in this order.
pom.xml or build.gradleapplication.properties or application.ymlrun the scanner again with --check; it exits with 1 while any CRITICAL issue remains (a missing modular starter, for example, compiles but fails at startup):
python3 "${CLAUDE_SKILL_DIR}/scripts/scan_migration_issues.py" /path/to/project --checkrun unit tests
run integration tests
run container-based tests where present
check for deprecations and startup failures
When multiple ecosystems are involved, use this order:
Read references/migration-overview.md before deviating from this sequence.
After each phase, report:
references/spring-boot-4-migration.mdreferences/spring-modulith-2-migration.mdreferences/testcontainers-2-migration.mdreferences/migration-overview.mdscripts/scan_migration_issues.py: --check exits with 1 while CRITICAL issues remain. It skips build output and hidden directories, including project-level skill installs.When planning or reporting the migration, return:
## Migration scope
- Current versions:
- Target versions:
## Planned phases
1. ...
2. ...
3. ...
## Files expected to change
- `path/to/file`
## Verification
- Tests or checks to run