Fundamentals 11 min read

What’s New in Java: JDK 20, Loom Updates, and Upcoming JEPs

This roundup covers the latest Java developments, including JEP 434’s move to candidate status, second‑preview updates for virtual threads and structured concurrency, the JDK 20 release schedule, and new releases across Spring, GraalVM, Open Liberty, Vert.x, TomEE, JReleaser, Hibernate, PrimeFaces, JDKMon, and EclipseCon.

Programmer DD
Programmer DD
Programmer DD
What’s New in Java: JDK 20, Loom Updates, and Upcoming JEPs

OpenJDK

JEP 434 (External Functions and Memory API, second preview) moved from Draft 8293649 to Candidate status. The evolution path: JEP 424 delivered in JDK 19, JEP 419 in JDK 18, JEP 412 in JDK 17. The JEP is proposed for a second preview in JDK 20 with updates such as unifying MemorySegment and MemoryAddress interfaces and enhancing the MemoryLayout sealed interface.

JEP Draft 8295817 (Virtual Threads, second preview) entered Submitted status. It belongs to the Loom project and proposes a second preview of JEP 425 (Virtual Threads, preview) delivered in JDK 19. Apart from a few APIs that became permanent in JDK 19, there are no other changes.

JEP Draft 8296037 (Structured Concurrency, second incubator) also entered Submitted status. It proposes a second incubator of JEP 428 (Structured Concurrency) delivered in JDK 19, targeting JDK 20, with an update to StructuredTaskScope to allow threads created in the scope to inherit scope values.

JDK 20

The early‑access Build 21 of JDK 20 was released last week, including various bug fixes. Details are in the release notes.

Oracle Java Platform Group chief architect Mark Reinhold announced the JDK 20 release schedule: Ramp‑down Phase One – 8 Dec 2022; Ramp‑down Phase Two – 19 Jan 2023; Initial Release Candidate – 9 Feb 2023; Final Release Candidate – 23 Feb 2023; General Availability – 21 Mar 2023.

Developers can report bugs to the Java Bug Database.

Loom Project

The early‑access Build 20‑loom+20‑34 of the Loom project is now available to the Java community and is built on JDK 20 early‑access Build 20.

Spring Framework

Spring Integration 6.0.0‑candidate includes features such as RabbitMQ Streams, Kotlin coroutines, and GraalVM multi‑language JavaScript support, and removes Spring Data for Apache Geode. Details are in the release notes.

Spring Tools 4.16.1 for Eclipse, VS Code, and Theia has been released, supporting Eclipse 2022‑12. Migration guidance is required for upgrades from 4.15.3 due to the m2e 2.0 update.

GraalVM

Oracle Labs released GraalVM 22.3, supporting JDK 19 and jlink, with updates to native‑image monitoring and developer experience. GraalVM CE Java code will become part of OpenJDK. More details are in the release notes and a YouTube video.

Open Liberty

IBM promoted Open Liberty 22.0.0.11 from beta to release, adding support for JDK 19 and distributed security cache, and fixing CVE‑2022‑24839.

Open Liberty 22.0.0.12‑beta adds support for six new Jakarta EE 10 specifications and two updated MicroProfile specifications.

Eclipse Vert.x

Eclipse Vert.x 3.9.14 was released, upgrading dependencies such as GraphQL Java 19.2, Netty 4.1.84.Final, Protocol Buffers Java 3.21.7, and Jackson Databind (fixing CVE‑2022‑42003). The 3.9 series will reach end‑of‑life at the end of 2022; users are encouraged to upgrade to Vert.x 4.x.

Apache Software Foundation

Apache TomEE 8.0.13 was released, featuring an example of using attribute providers and dependency upgrades including Jakarta Faces 2.3.18, MyFaces 2.3.10, Hibernate Integration 5.6.9.Final, BatchEE 1.0.2, Tomcat 9.0.68, and SnakeYAML 1.33.

JReleaser

JReleaser 1.3.0 is now available, adding a new WorkflowListener extension, an option to install native‑image components, and support for deploying JARs and POMs to Maven‑compatible repositories.

Hibernate

Hibernate Search 5.11.11.Final and 5.10.13.Final were released, upgrading Hibernate ORM to 5.4.33.Final and 5.3.28.Final respectively. Version 5.10.13 also fixes a ClassCastException when creating FullTextSession via EntityManager in Spring Boot 2.4+ and Spring Framework 5.3+.

PrimeFaces

PrimeFaces released versions 7.0.30, 8.0.22, 10.0.17, 11.0.9, and 12.0.1 with new features such as an IN filterMatchMode for JpaLazyDataModel and corrected emptyLabel handling in SelectCheckboxMenu.

PrimeVue 3.18.0 adds accessibility enhancements for all menu components, template support for FileUpload, and a responsive paginator.

JDKMon

JDKMon 17.0.37, a tool for monitoring and updating installed JDKs, is now available to the Java community. It fixes an issue detecting GraalVM builds.

EclipseCon

EclipseCon 2022 took place in Ludwigshafen, Germany, with talks covering Java, open‑source, cloud‑native technologies, and quality and security topics, as well as the annual community day.

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.

springgraalvmOpenJDKJEPjdk20Loom
Programmer DD
Written by

Programmer DD

A tinkering programmer and author of "Spring Cloud Microservices in Action"

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.