Project Jigsaw integration into JDK 9

Alan Bateman Alan.Bateman at
Fri Mar 11 14:49:14 UTC 2016

Those on jigsaw-dev will be aware [1] that we have been planning to 
integrate a snapshot of the changes from the jigsaw/jake forest into JDK 
9.  More specifically, we are proposing to stabilize a snapshot of the 
module system that we have been working on in Project Jigsaw and 
integrate it into the JDK 9 main line.  Once integrated then we will 
continue in Project Jigsaw on the remaining areas and issues.

In terms of JEPs then this integration is JEP 200 [2], JEP 260 [3], JEP 
261 [4] and JEP 282 [5]. In the case of JEP 260 then JDK internal APIs 
will be encapsulated with the work to get us to a jdk.unsupported module 
ongoing. In terms of the JCP then JSR 376 is the JSR that is defining 
the Java Platform Module System and is what JEP 261 is implementing. The 
JSR is expected to submit an Early Draft Review soon.

For those that have not been following the work in Project Jigsaw then 
the main project main page [6] has links to a lot of resources. If you 
only have time to read one document then make sure to read The State of 
the Module System [7] as that gives an informal overview of the proposal 
and design. If you have time to read a second document then put JEP 261 
on your reading list. The Risks and Assumptions section of the JEP has 
the complete list of compatibility issues that we are aware of.

For the integration then we are proposing to integrate during the week 
of March 21 for jdk-9+111. We are keeping the week of March 27 for 
jdk-9+112 as backup in the event of issues.

The proposal is to integrate directly into jdk9/jdk9 (master) and then 
immediately sync up jdk9/dev with the other forests to follow. The 
rational for going directly into master is that this is a large change 
and we would like it to be the only change in the weekly build. This is 
our third major milestone on this project, we integrated directly in 
master for the previous two milestones (JEP 201 and JEP 220) too.

Code review [8] is ongoing and we expect to be iterating on the changes 
into next week so that we get the changes into a reasonable state to 
bring into JDK 9. Many people are involved to ensure that we have at 
least some coverage in all areas and repositories.

I will send an update closer to the proposed integration date once it 
clearer whether we can make jdk-9+111.



More information about the jdk9-dev mailing list