Updated webrev with Harold’s latest VM change incorporating the review comments: http://cr.openjdk.java.net/~mchung/jdk9/webrevs/8136930/webrev.01/index.html
Harold - the revised VM change looks okay to me. Minor one: you define the following: 202 #define MODULE_PATH_PROPERTY "-Djdk.module.path” 204 #define MODULE_UPGRADE_PATH_PROPERTY "-Djdk.module.upgrade.path" It may be good to consider having #define for all module property names and used consistently. Mandy > On Jun 3, 2016, at 11:47 PM, Mandy Chung <mandy.ch...@oracle.com> wrote: > > Webrev: > http://cr.openjdk.java.net/~mchung/jdk9/webrevs/8136930/webrev.00/ > > -modulepath, -addmods, -limitmods, -XaddExports, -XaddReads, -Xpatch are java > launcher options in the current implementation. Custom launchers will have > to use -D to set some system properties to configure module system. > Different ways to configure module system is confusing and not friendly for > environments using both java launcher and custom launchers. > > This patch pushes the handling of the module options into the VM. That will > avoid the confusion between launcher and VM options and avoids needing to use > system properties. All launcher implementations can configure the module > system via JNI Invocation API setting these options in a unified way. The > options and syntax remain the same as specified in JEP 261. > > For the non-repeating options, like the other VM options, the last one wins. > The current implementation communicates the options to the module system > through system properties, as a private interface, and these system > properties will be removed once they are read during the module system > initialization. These system properties are reserved as private interface > and they will be ignored if they are set via -D in the command line. Harold > implements the hotspot change and can explain further details. > > This patch will impact existing tests and scripts that set the system > properties for example to break encapsulation in the command line e.g. > -Djdk.launcher.addexports.<N>. They will need to be updated to replace the > use of -D with the appropriate module option e.g. -XaddExports. Since they > are new options in JDK 9, use -XX:+IgnoreUnrecognizedVMOptions if they need > to be ignored by earlier releases. > > Mandy > >