Java
Java Ecosystem Advances With JDK 28 Features, GraalVM 25.2, and Jakarta AI Milestone
OpenJDK targets stricter field initialization and value objects for Java 28, while GraalVM ships GPU support and Jakarta EE introduces its first agentic AI milestone.
InfoQ
The Java community rolled out significant updates this week across multiple frameworks and tools, signaling continued momentum in language evolution and runtime improvements.
OpenJDK Advances Toward JDK 28#
Three Java Enhancement Proposals have progressed through the OpenJDK review pipeline for JDK 28. JEP 539 now targets strict field initialization in the JVM, a preview feature that ensures fields are explicitly initialized before use—eliminating unexpected default values. This builds predictability for compiler implementations that generate bytecode.
JEP 401, covering value objects, also moved to targeted status. Value objects represent a new class category: immutable, identity-free objects distinguished purely by their field values. This addition extends Java's type system to better support functional programming patterns.
Meanwhile, JEP 535 advanced from candidate to proposed-to-target, aiming to make Shenandoah GC's generational mode the default behavior. The traditional non-generational variant would be deprecated, with removal planned for a later release.
On the cryptography front, JEP 542 graduated to candidate status, finalizing support for PEM (Privacy-Enhanced Mail) encoding of keys and certificates after three preview cycles. The update introduces API refinements, including a conversion of the PEM record to a standard class and renaming of the binary interface.
Early Builds and Runtime Developments#
Early-access builds continued their cadence: JDK 27 Build 33 and JDK 28 Build 9 both shipped with bug fixes addressing various issues. Full details are available in each release's notes.
GraalVM Expands Platform Support and Agent Capabilities#
GraalVM 25.2 introduced a Graal Script Agent—an early-preview library that transforms natural-language instructions into isolated, locally-run application plugins. The release also added G1 garbage collection support to Native Image across all platforms, including Windows, and enabled the Java Vector API by default, accelerating numerical workloads.

