From java-core
Guides Java project upgrades from 8→11, 11→17, or 17→21 by detecting version from pom.xml/build.gradle, listing breaking changes, new features, and build updates.
How this skill is triggered — by the user, by Claude, or both
Slash command
/java-core:java-migrateThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Guide the migration of a Java project to a newer Java version. This is an interactive migration assistant.
Guide the migration of a Java project to a newer Java version. This is an interactive migration assistant.
Check pom.xml (<java.version>, <maven.compiler.source>, <maven.compiler.target>) or build.gradle (sourceCompatibility, javaVersion). Ask for target version if not specified.
Breaking changes to fix:
sun.* and com.sun.* internal API usage → find public alternativesjavax.xml.bind (JAXB), javax.activation, javax.annotation → add as Maven dependencies (jakarta.xml.bind-api, etc.)ClassLoader.getSystemClassLoader().getResourceAsStream() → use getClass().getResourceAsStream()finalize() → deprecated, suggest Cleaner or try-with-resourcesQuick wins to adopt (optional):
var for local variables (Java 10+) where type is obviousList.of(), Map.of(), Set.of() instead of Collections.unmodifiableList(Arrays.asList(...))String new methods: isBlank(), strip(), lines(), repeat()Optional.ifPresentOrElse(), Optional.or()Build changes:
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
Breaking changes to fix:
--add-opens flags (may need library updates)SecurityManager usagesun.misc.Unsafe direct usage → find library replacementsQuick wins to adopt (optional):
instanceof (Java 16+)Breaking changes to fix:
Quick wins to adopt (optional):
getFirst(), getLast() (Java 21)Output a numbered checklist:
Migration: Java [current] → Java [target]
REQUIRED (must fix before compiling):
[ ] 1. [specific change with file/class reference if visible]
[ ] 2. ...
RECOMMENDED (adopt for better code):
[ ] 3. [specific improvement]
[ ] 4. ...
BUILD CHANGES:
[ ] Update pom.xml/build.gradle compiler version
[ ] Update CI/CD Java version
[ ] Update Docker base image (e.g., eclipse-temurin:[target]-jre)
If the project files are accessible: "Want me to scan your codebase for the required changes above?"
/java-review to catch any remaining issues/java-refactor to adopt new idiomsnpx claudepluginhub ducpm2303/claude-java-plugins --plugin java-coreDetects Java version from pom.xml or build.gradle and suggests refactorings like lambdas (8+), streams (8+), records (16+), pattern matching (17+), plus universal changes like method extraction and dead code removal.
Provides JVM dependency intelligence via Maven Tools MCP: version lookup, upgrade safety, CVEs, license risks, and release history for Maven/Gradle projects.
Guides framework and language migrations: version upgrades, breaking changes, dependency audits, codemods, rollbacks. For React 19, Next.js App Router, Python 3.12, Node 22, etc.