java-8-to-21
Installation
SKILL.md
Upgrade Java 8 → 21
Java 8 LTS support ended for many vendors; Java 11, 17, 21 are the LTS waypoints. The 8 → 21 jump unlocks records, virtual threads, pattern matching — language features that meaningfully improve code. The trade-off: dependency upgrades (Spring Boot 2 → 3, Hibernate 5 → 6) ride along.
When to use
- Codebase still on Java 8 (yes, this is common in 2026).
- Considering 8 → 11 or 11 → 17 — same pattern; less benefit.
- Greenfield modules that should be 21 from the start.
When NOT to use
- Stuck on a vendored Java 8 by customer requirement (regulated, embedded).
- Using libraries that explicitly don't support 17+ (rare; usually a fork exists).
- Java 8 with Spring Boot 1.x — multiple sequential upgrades (Spring Boot 1 → 2 → 3 + Java 8 → 21). Stage carefully.