JDK 16 is starting to take shape. The next Java upgrade, which won’t be available until March 2021, will bring the JDK source code and HotSpot VM support for C ++ 14 language features.
Although the delivery of the next Java Development Kit is not expected until March 2021, JDK 16 is starting to take shape, particularly in terms of enabling C ++ 14 language features in the C ++ source code of the JDK. After the release of JDK 15, expected on September 15, JDK 16 will become the reference implementation of the standard version of Java. If the standard Java six-month release cycle is met, it can be estimated that JDK 16 will be ready next March. As of July 29, three proposed changes have been accepted for JDK 16:
- Activation of C ++ 14 language functionalities: this must allow the use of C ++ 14 language functionalities in the C ++ source code of the JDK and provide specific indications on the functionalities that can be used in the code of the HotSpot VM. Until JDK 15, the language features used by C ++ code in the JDK were limited to C ++ 98/03 language standards. Starting with JDK 11, the source code has been updated to support newer versions of standard C ++ code. In particular, it is possible to build with recent versions of compilers supporting the functionalities of the C ++ 11/14 language. This proposal does not propose any style or usage change for the C ++ code used outside the HotSpot VM. But to take advantage of the features of the C ++ language, some modifications are required depending on the platform compiler.
- Migration of OpenJDK source code repositories from Mercurial to Git. This migration has several advantages: it reduces the size of the version control system metadata, it provides access to more tools and it offers new hosting options.
- Migration to GitHub, linked to migration from Mercurial to Git: JDK 16 source code repositories will be available on the popular code sharing site.
Preliminary versions of JDK 16 for Linux, Windows, and MacOS are available at jdk.java.net. Like JDK 15, JDK 16 will be a Short Term Release, meaning it will be supported for six months. JDK 17, slated for September 2021, will be a Long Term Support (LTS) release. It will benefit from support for several years. JDK 11, released in September 2018, is the current LTS version of JDK.