Please review: VM side of Jigsaw classpath mode support

Karen Kinnear karen.kinnear at oracle.com
Fri Aug 24 06:07:08 PDT 2012


David,

Thank you for looking at this.

The jvm is trying to detect whether it is running with rt.jar or a module image - so it is looking for jdk.base relative to where the jre is.
Given we are looking at multiple profiles including some minimal ones, it is not yet clear what other modules would be required for the
system module library. I could see value in tools checking for profile completeness.

thanks,
Karen

On Aug 24, 2012, at 7:48 AM, Alan Bateman wrote:

> On 24/08/2012 12:29, David Holmes wrote:
>> 
>> Not quite an internal detail. I can do:
>> 
>> jmod create -L myjre
>> jmod -L myjre install jdk.base at 8-ea.jmod
>> 
>> to get a JRE - albeit non-functional. If there is a required layout then the tools need to enforce that.
>> 
>> David
> The system module library is special and needs to be created in a way that takes account that it part of an image. For compatibility (and usability reasons) this means that the commands (javac, java, etc.) need to be in the image's bin directory rather than a module-private location. Native libraries are complicated by dependencies and also the need to have libjvm in a known location so that custom launchers can dlopen it. So yes, definitely not functional if you do the above. In any case, I think the VM has to special case the base module and has to have code to detect that it's running with module image.
> 
> -Alan.




More information about the jigsaw-dev mailing list