Runtime image restructure

There are two types of runtime images in Java: JDK and JRE. Beginning with Java 9, both of these image types were restructured to differentiate between files that can be used and modified by users to internal files that can be used but not modified by developers and their apps.

The JDK build system, prior to Java 9, produced both a JRE and a JDK. The JRE is a complete implementation of the Java platform. The JDK includes the JRE as well as other tools and libraries. A notable change in Java 9 is that the JRE subdirectory is no longer part of the JDK image. This change was made, in part, to ensure both image types (JDK and JRE) have identical image structures. With a common and reorganized structure, future changes will be more efficiently integrated.

If you created custom plugins prior to Java 9 that address a specific structure, your app might not work in Java 9. This is also true if you are explicitly addressing tools.jar.

The following diagram provides a high-level view of the contents of each image before Java 9's release:

The Java 9 runtime images are illustrated in the following diagram. As shown, a full JDK image contains the same directories as a modular runtime image as well as demo, sampleman, and includes directories:

There is no longer a difference between a JRE and JDK image. With the current Java platform, a JDK image is a JRE image that contains a full set of dev tools.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset