News
Eight JEPs Advance to Candidate Status as Java Community Prepares for JDK 25
- By John K. Waters
- April 23, 2025
The OpenJDK community elevated eight new JEPs (JDK Enhancement Proposals) to Candidate status during the week of April 14, signaling notable momentum ahead of the upcoming JDK 25 feature freeze. Four of these proposals are slated to be finalized following their respective preview phases.
- JEP 512, Compact Source Files and Instance Main Methods, progresses after four rounds of preview (JEPs 495, 477, 463, 445) and aims to simplify entry-level Java programming. It builds on the "Paving the on-ramp" initiative by Oracle language architect Brian Goetz. Gavin Bierman has published a draft specification.
- JEP 511, Module Import Declarations, proposes to finalize after previews in JEP 494 and JEP 476, enabling simpler reuse of modular libraries.
- JEP 510, Key Derivation Function API, targets finalization following preview in JEP 478, facilitating cryptographic key derivation.
- JEP 509, JFR CPU-Time Profiling (Experimental), introduces CPU-time profiling for JDK Flight Recorder on Linux.
- JEP 508, Vector API (Tenth Incubator), continues incubation from JEPs 489, 469, 460, and others, pending dependencies on Project Valhalla. It provides a vector computation API targeting performance gains on supported CPUs.
- JEP 507, Primitive Types in Patterns, instanceof, and switch (Third Preview), follows previews in JEP 488 and JEP 455, extending pattern matching to primitive types. Draft spec is available by Aggelos Biboudis.
- JEP 506, Scoped Values, is intended for finalization after preview rounds in JEP 487, 481, 464, and 446. The feature is positioned as an alternative to thread-local variables in virtual threads.
- JEP 505, Structured Concurrency (Fifth Preview), proposes API refinements over previews JEP 499, 480, 462, and 453, aiming to simplify concurrent programming via unified task management.
According to the JDK 25 timeline confirmed by Oracle’s Mark Reinhold, key milestones are:
- Rampdown Phase One: June 5, 2025
- Rampdown Phase Two: July 17, 2025
- Initial Release Candidate: August 7, 2025
- Final Release Candidate: August 21, 2025
- General Availability: September 16, 2025
Currently, JEP 503 (Remove the 32-bit x86 Port) and JEP 502 (Stable Values [Preview]) are confirmed in the JDK 25 feature set. Although not yet targeted, JEP 508 is expected to be included.
About the Author
John K. Waters is the editor in chief of a number of Converge360.com sites, with a focus on high-end development, AI and future tech. He's been writing about cutting-edge technologies and culture of Silicon Valley for more than two decades, and he's written more than a dozen books. He also co-scripted the documentary film Silicon Valley: A 100 Year Renaissance, which aired on PBS. He can be reached at [email protected].