Java 14: Seventh JEP proposed to target JDK 14
Java 14, the third version since the last LTS release, is in development. Java 12 and Java 13 each came with a manageable number of new features; a system that, for Java 14, will probably not change. This is of course due to the new release cadence. Nevertheless, there are now 10 JEPs that are likely to be implemented for JDK 14 and the planning phase is not yet complete. What’s new is that a seventh JEP has now been proposed to target JDK 14: JEP 366.
Will we see features from Project Valhalla or Project Amber in Java 14? It’s still in the stars. Also whether Git, as currently tested in Project Skara, replaces Mercurial for the JDK has not yet been finally decided. But the work on Java 14 has started and it will be a little while before the next JDK is available. In the meantime we’re keeping track of the developments right here.
The latest Java 14 news
Of last week’s three new Java Enhancement Proposals, JEP 365 (ZGC on Windows), JEP 366 (Deprecate the ParallelScavenge + SerialOld GC Combination) and JEP 367 (Remove the Pack200 Tools and API), two of them were immediately proposed to target JDK 14. Now, a week later, JEP 366 has also been proposed to target JDK 14. That brings the number of JEPs proposed to target JDK 14 up to seven; the four others proposed to target JDK 14 are: JEP 345 (NUMA-Aware Memory Allocation for G1), JEP 361 (Switch Expressions) and JEP 363 (Remove Concurrent Mark Sweep (CMS) Garbage Collector and JEP 364 (ZGC on macOS).
These seven JEPs proposed to target JDK 14 join the two already targeted to Java 14 and one already integrated. That means we now have a handle on at least 10 of the features under consideration for the next big Java release in March next year.
JDK 14 – What we know
The first step on the road to the next Java release was taken in June when the Expert Group was formed. The group includes members such as Simon Ritter (Azul Systems), Manoj Palat (Eclipse Foundation), Tim Ellison (IBM), Andrew Haley (Red Hat), Volker Simonis (SAP SE), Iris Clark (Oracle) and of course Brian Goetz (also Oracle).
As always, Mark Reinhold shared the planned release schedule on the jdk-dev mailing list. This looks to be the final plan:
|December 12, 2019||Start Rampdown Phase One|
|January 16, 2020||Start Rampdown Phase Two|
|February 6, 2020||First release candidate|
|February 20, 2020||Final release candidate|
|March 17, 2020||Release of Java 14|
Java 14’s new features
The following JEPs are already confirmed to be targeted to Java 14:
- JEP 349: JFR Event Streaming
- JEP 352: Non-Volatile Mapped Byte Buffers
- JEP 358: Helpful NullPointerExceptions
And the following JEPs are proposed to be targeted to Java 14:
- JEP 345: NUMA-Aware Memory Allocation for G1
- JEP 361: Switch Expressions (Standard)
- JEP 363: Remove the Concurrent Mark Sweep (CMS) Garbage Collector
- JEP 364: ZGC on macOS
- JEP 365: ZGC on Windows
- JEP 366: Deprecate the ParallelScavenge + SerialOld GC Combination
- JEP 367: Remove the Pack200 Tools and API
Stay tuned for the latest Java 14 updates!