Project Jigsaw: Context & History

The original goal of this Project was to design and implement a module system focused narrowly upon the goal of modularizing the JDK, and to apply that system to the JDK itself. We expected the resulting module system to be useful to developers for their own code, and it would have been fully supported for that purpose, but it was not at the outset intended to be an official part of the Java SE Platform Specification.

For background on the initial proposal, please see the following blog entries:

The growing demand for a truly standard module system for the Java Platform motivated expanding the scope of the Project, as described above, to produce a module system that can ultimately become a JCP-approved part of the Java SE Platform and also serve the needs of the ME and EE Platforms.

In an earlier exploratory phase we prototyped one particular approach to this set of requirements.

Jigsaw was originally intended for Java 7 but was deferred to Java 8 as part of "Plan B". More recently a decision was made to defer it to Java 9 in order to allow more time both for development and for broad review, testing, and feedback: