Sigh, bootclasspath again

Mandy Chung Mandy.Chung at Sun.COM
Wed Apr 7 14:48:00 PDT 2010


Hi Jon,

It's a bug in the launcher that adds -Xbootclasspath/p: for legacy mode 
as the last VM argument. Hotspot VM prepends the given 
-Xbootclasspath/p: argument to the bootclasspath in the order of the 
input VM arguments.  That's why the classes in the system module library 
always get loaded but not the command-line -Xbootclasspath/p: argument.

http://cr.openjdk.java.net/~mchung/jigsaw/bootclasspath-prepend-fix/

I tested this javac command that picks up the javac classes from 
langtools/dist/lib/classes.jar.

$ jdk-module-image/bin/javac 
-J-Xbootclasspath/p:langtools/dist/lib/classes.jar -J-verbose:class -version

Mandy

Mandy Chung wrote:
> Jonathan Gibbons wrote:
>> Jonathan Gibbons wrote:
>>> Is -Xbootclasspath/p: supported in JVM legacy mode?
>>>
>>> I'm beginning to suspect it is not. Can anyone confirm one way or the 
>>> other?
>>>
>>> -- Jon
>>>
>> I have proof that it is not, for those that want to wade through the 
>> debugging output from my test. This is a big deal bug.
>>
> 
> -Xbootclasspath/p: is expected to work in JVM legacy mode as it is.  In 
> JVM legacy mode, the launcher sets -Xbootclasspath/p:<list of all 
> modules> and passes it to the VM.  I set _JAVA_LAUNCHER_DEBUG 
> environment variable and confirms that the user-specified 
> -Xbootclasspath/p: and the -Xbootclasspath/p: computed by the launcher 
> are passed to the JVM.
> 
> The VM should be able to take one or more -Xbootclasspath/p options.  
> I'll need to investigate further.
> 
> Mandy




More information about the jigsaw-dev mailing list