RFR: JDK-8189094: Change required boot jdk to JDK 9

Alan Bateman Alan.Bateman at oracle.com
Tue Oct 17 20:37:21 UTC 2017

On 17/10/2017 20:20, Martin Buchholz wrote:
> :
> Wow, --limit-modules sure is a good trick.  So now we have two 
> possible replacements for the demise of -Xbootclasspath/p:
> --patch-module
> --limit-modules combined with renamed replacement modules
The trick works for the unique scenario of bootstrapping the build but 
is not general purpose. You can't use it to replace java.base or any 
module mapped to the boot or platform class loaders for example.

> Looking at the patch I see
> +    --add-exports java.base/sun.reflect.annotation=jdk.compiler.interim \
> +    --add-exports java.base/jdk.internal.util.jar=jdk.jdeps.interim \
> +    --add-exports java.base/jdk.internal.misc=jdk.jdeps.interim \
> +    #
> so the interim compiler is accessing JDK internals - isn't this what 
> we're telling users NOT to do?  Especially when this is the internals 
> of the boot jdk - You can't bootstrap jdk10 with any compliant 
> implementation of Java SE 9!  The jdk bootstrap process should be 
> setting a good example!
We are stuck with the first one due to an oversight in JDK 5 in the way 
that annotations are serialized.

I think the other two should go away once JarFile provides a way to get 
a versioned stream (there have been a couple of threads about this on 


More information about the build-dev mailing list