https://openjdk.org/jeps/200

What?

Divide the JDK into a set of modules that can be combined at compile time, build time, and run time into a variety of configurations

It implemented this proposal using Java 9s Java Platform Module System (JPMS).

This enabled the combination of various individual modules to create Java releases for varying VM and Device footprints. This is akin to using various microservices to compose one more extensive application.

Why

Its primary goals are to make implementations of the Platform more easily scalable down to small devices, improve security and maintainability, enable improved application performance, and provide developers with better tools for programming in the large.

I don’t have any insight into how prior releases of Java SE, EE, and ME were managed, but from reading this JEP, it appears that the release process must have been streamlined for quicker releases.

Module Schemes

The JEP also defined some naming schemes for modules -

// Standard modules governed by JCP
java.

// Modules that are merely part of the JDK
jdk.

// AGGREGATOR: Modules that are part of the SE and overlap with EE
jaa.se.ee

// AGGREGATOR: Modules that are only part of the SE
java.se

Open questions

Does JEP-200 allow mixing modules from different providers?