agentsclimarketplace

Javax to jakarta migration

Skill github/awesome-copilot/skills/javax-to-jakarta-migration

Migrate Java code from javax.* to jakarta.* namespace. Use when upgrading to Tomcat 11, Jakarta EE 10, or when javax imports are detected in the codebase.From its SKILL.md

Install
npx -y skills add github/awesome-copilot --skill javax-to-jakarta-migration

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

SKILL.md

2.5 KB, 599 tokens by cl100k_base, as published. Nobody here has run it

javax → jakarta Migration Skill

When to Use

  • Upgrading to Tomcat 11 / Jakarta EE 10+
  • Code review detects javax.* imports
  • Migrating an existing project to the jakarta namespace

Procedure

Step 1 — Scan for javax Usage

Search the codebase for all javax.* imports that need migration:

javax.servlet.*      → jakarta.servlet.*
javax.persistence.*  → jakarta.persistence.*
javax.validation.*   → jakarta.validation.*
javax.annotation.*   → jakarta.annotation.*
javax.inject.*       → jakarta.inject.*
javax.enterprise.*   → jakarta.enterprise.*
javax.faces.*        → jakarta.faces.*
javax.ws.rs.*        → jakarta.ws.rs.*
javax.el.*           → jakarta.el.*
javax.json.*         → jakarta.json.*
javax.mail.*         → jakarta.mail.*
javax.websocket.*    → jakarta.websocket.*

Do NOT migrate these (they remain in javax.*):

  • javax.sql.* — part of JDK
  • javax.naming.* — part of JDK (JNDI)
  • javax.crypto.* — part of JDK
  • javax.net.* — part of JDK
  • javax.security.auth.* — part of JDK
  • javax.swing.*, javax.xml.parsers.* — JDK packages

Step 2 — Update pom.xml

Replace dependency coordinates:

OldNew
javax.servlet:javax.servlet-apijakarta.servlet:jakarta.servlet-api:6.0.0
javax.persistence:javax.persistence-apijakarta.persistence:jakarta.persistence-api:3.1.0
javax.validation:validation-apijakarta.validation:jakarta.validation-api:3.0.2
javax.annotation:javax.annotation-apijakarta.annotation:jakarta.annotation-api:2.1.1

Step 3 — Update web.xml (if present)

<!-- Old namespace -->
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" version="4.0">

<!-- New namespace -->
<web-app xmlns="https://jakarta.ee/xml/ns/jakartaee" version="6.0">

Step 4 — Update Java Source Files

Replace all javax. imports with jakarta. equivalents in .java files.

Step 5 — Verify

  1. Run mvn clean compile or gradlew build — fix any compilation errors
  2. Run mvn test or gradlew test — ensure all tests pass
  3. Search for any remaining javax.* imports (excluding JDK packages)

Output

Provide a migration summary listing all files changed, imports replaced, and any manual steps required.

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 326,144. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.