We've been accumulating changes in the jake forest that are tied to JSR issues for the last few months. Some of the changes (such as #ClassLoaderNames) have already been pushed upstream to jdk9/dev but we've still sitting on a large patch.

We would like to move the changes that we have in jake to jdk9/dev soon, early December if possible. One motivation is to get the changes and new APIs into JDK 9 main line so that they can be used and tested more widely. This should help reduce some of the confusion with having two builds too. Another motivation is that the merging is getting painful, esp. the langtools repository where we have regular conflicts with changes to javac pushed via jdk9/dev.

To that end, I will start a code review soon that will be a snapshot of the changes in the jake forest. Once these changes are reviewed and in jdk9/dev then we will continue in the jake forest where appropriate - particularly in areas that are tied to JSR issues where we need to iterate and prototype, also in areas where we need to re-work some areas of the implementation.

As people on this mailing list know, jake has the changes for #AwkwardStrongEncapsulation [1] where setAccessible has been changed so it can't be used to break into non-public members/types in exported packages of JDK modules. It was changed more than a year ago to fail when attempting to use it to break into non-exported packages. Dialing it up further is a disruptive change that will expose a lot of hacks and issues with existing code that is used to accessing non-public fields/methods in JDK classes. It will take some libraries and tools a bit of time to digest this change, even with the --add-opens command line option and Add-Opens manifest in application JAR files to keep existing code going. I plan to send mail to jdk9-dev in advance of this integration to create wider awareness of this change.

-Alan

[1] http://openjdk.java.net/projects/jigsaw/spec/issues/#AwkwardStrongEncapsulation

Reply via email to