The primary goals of this Project are to:
Make the Java SE Platform, and the JDK, more easily scalable
down to small computing devices;
Improve the security and maintainability of Java SE Platform Implementations in general, and the JDK in particular;
Enable improved application performance; and
Make it easier for developers to construct and maintain libraries
and large applications, for both the Java SE and EE Platforms.
To achieve these goals we propose to design and implement a standard module system for the Java SE Platform and to apply that system to the Platform itself, and to the JDK. The module system should be powerful enough to modularize the JDK and other large legacy code bases, yet still be approachable by all developers.
You can follow our work, and get involved in it, on the jigsaw-dev list.
A related Project, Penrose, is exploring interoperability between Jigsaw and OSGi.
Recent traffic & working documents
- Project Jigsaw: Phase Two
- Goals & Requirements (DRAFT 3)
- JEP 200: The Modular JDK
- JEP 201: Modular Source Code
- JEP 220: Modular Run-Time Images
- JSR 376: Java Platform Module System
- JEP 260: Encapsulate Most Internal APIs
The reorganization of the source code (JEP 201) was merged into JDK 9 build 27, in August 2014.
The restructuring of run-time images to support modules (JEP 220) was merged into JDK 9 build 41, in December 2014.
JSR 376, for the Java Platform Module System, was approved by the JCP Executive Committee in December 2014.
The plan for encapsulating most internal APIs (JEP 260) was posted in August 2015.
This Project is sponsored by the Compiler Group.