What’s New in Jakarta EE 10 and JDK 19? A Deep Dive into Java’s Latest Evolution

The article reviews the recent release of Jakarta EE 10, its compatibility with Java SE 11‑17, the evolution of JDK 19 and upcoming JDK 21 features, and discusses how these changes impact enterprise Java development, microservice support, and the broader Java ecosystem.

21CTO
21CTO
21CTO
What’s New in Jakarta EE 10 and JDK 19? A Deep Dive into Java’s Latest Evolution

Last week was an important week for Java. On September 22 the Eclipse Foundation announced Jakarta EE 10, the successor to the long‑promoted Java EE (Enterprise Edition).

Although JDK 19 was released just days earlier and has no direct link to Jakarta EE, Jakarta EE 10 only requires Java SE 11 or newer and continues to support the LTS release Java SE 17.

In December 2020 Jakarta EE 9 officially replaced Java EE, focusing almost entirely on renaming the javax.* packages to jakarta.*. This was necessary because Oracle, when donating Java EE to the Eclipse Foundation in 2019, retained the Java brand and trademarks.

Jakarta EE 9.1 arrived in May 2021, adding support for Java SE 11. Jakarta EE 10 is the first major version released since Oracle’s donation.

Eclipse leader Mike Milinkovich described it not so much as a technical upgrade but as the foundation’s first major collaborative release with the community, hoping to revive the “nearly dead Java EE ecosystem of 2017”.

The Jakarta EE working group has grown, now including Microsoft, and the number of applications certified as Jakarta EE compatible continues to rise.

“Changing the namespace caused a fundamental shift that forced the whole ecosystem to rewrite its product code,” he said. “It’s a big bet.” Major servers such as Jetty, Tomcat and Spring are already migrating to the Jakarta namespace.

Jakarta EE 10 adds several enhancements: built‑in security with OpenID Connect, a modernized CDI (Context and Dependency Injection) with a lightweight CDI Lite profile, and a Core Profile aimed at lightweight runtimes for microservices.

In a survey of more than 1,400 Jakarta developers, the second‑largest priority was better support for microservices, while the top priority was native integration with Kubernetes.

JDK 19, released earlier, is not an LTS version and is supported only until March 2023. Java follows a semi‑annual release cadence (March and September), with a new LTS version every two years; the next LTS, JDK 21, is slated for September 2023.

JDK 21’s release notes list many new features, including record patterns, the Project Panama foreign‑function‑and‑memory API, virtual threads and structured concurrency (Project Loom), a performance‑optimized Vector API, and pattern matching in switch statements. Most of these are still in preview or incubation and may not yet be attractive for enterprise adoption.

Azul’s Vice‑CTO Simon Ritter told DevClass that “technically there are no brand‑new features”; the preview and incubator modules are added to the platform for experimentation, not for immediate production use.

Project Loom has been in development for over four years; its implementation finally brings a new scheduler and extensions that developers will need time to adapt to.

Venkat Subramaniam, founder of Agile Developer, Inc., warned that Jakarta EE 10 touches almost every library function, especially those involving threads, and advised caution when adopting preview releases.

Project Panama, another major feature of JDK 19, aims to replace the cumbersome JNI (Java Native Interface) with a more user‑friendly API.

Some wonder whether Java’s slower pace of cutting‑edge features makes it more reliable, likening it to a “new COBOL”. Ritter disagrees, emphasizing that Java is more than just a language; its JVM is essential for its continued vitality.

James Gosling, the “father of Java”, has called Java a “blue‑collar language” focused on getting work done. Despite lagging behind newer languages in avant‑garde features, enterprise developers appreciate Java’s stability.

Original Source

Signed-in readers can open the original source through BestHub's protected redirect.

Sign in to view source
Republication Notice

This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactadmin@besthub.devand we will review it promptly.

JavaMicroservicesjakarta-eeEnterprise DevelopmentJDK 19
21CTO
Written by

21CTO

21CTO (21CTO.com) offers developers community, training, and services, making it your go‑to learning and service platform.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.