I took a pass through langtools changes. Overall seems OK to me. Some
minor comments:
-src/jdk.compiler/share/classes/com/sun/tools/javac/main/Option.java:
commented-out code in hasArg(). (Some more in Option.ArgKind, but that
seems mostly OK.)
-src/jdk.javadoc/share/classes/com/sun/tools/javadoc/resources/javadoc.properties:
the help is not listing --class-path, while it does list --source-path,
and some other help texts list --class-path - is that intentional?
-test/jdk/javadoc/tool/6964914/TestStdDoclet.java (and some other
tests): the references to jdk.launcher.patch.* where there probably to
support standalone testing; I note that standalone testing is probably
not going to work anymore for these tests.
Jan
On 5.8.2016 22:11, Mandy Chung wrote:
This patch renames the module-system options to GNU-style as specified
in JEP 293 [1] (see below for the new proposed option names). This
addresses the problems discussed in [2] that the launcher will pass
the module-system options down to the VM in the form of <option>=<value>.
This provides a consistent way to configure the module system and
simplify use of module-system options by custom launcher. This patch
also updates several JDK tools including jlink, jmod, jimage, jar,
javac, javap, javadoc, javah, jdeps such that the GNU-style
module-system options are consistent across all tools.
Webrev:
http://cr.openjdk.java.net/~mchung/jdk9/webrevs/8136930/gnu-options/webrev.00/
http://cr.openjdk.java.net/~mchung/jdk9/webrevs/8136930/gnu-options/webrev-langtools.00/
Harold has posted a separate code review for the hotspot change [3].
webrev.00 includes changes in all repos except hotspot. webrev-langtools.00
includes the changes in langtools repo (this may be convenient for
those who wants to review langtools change only).
Note that existing -cp and -classpath have no change and continue to
be supported. New long form option `--class-path` and `--help` are
added to java, javac, and other tools where applicable.
For transition, all old options except -listmods continue to be
supported by the java launcher, javac, javadoc, javap, javah.
I propose to remove the old options in two weeks after this patch
is promoted (i.e. two promoted builds to go through the transition).
Mandy
[1] http://openjdk.java.net/jeps/293
[2] http://mail.openjdk.java.net/pipermail/jigsaw-dev/2016-June/008079.html
[3] http://mail.openjdk.java.net/pipermail/jigsaw-dev/2016-July/008715.html
Existing Options New Options
-addmods --add-modules
-classpath | -cp | --classpath -classpath | -cp | --class-path
-limitmods --limit-modules
-listmods --list-modules
-m --module | -m
-modulepath | -mp | --modulepath --module-path | -p
-modulesourcepath --module-source-path
--plugin-module-path (no change)
-processormodulepath --processor-module-path
-upgrademodulepath --upgrade-module-path
-XaddExports --add-exports
-XaddReads --add-reads
-Xpatch --patch-module
-bootclasspath --boot-class-path | -bootclasspath
-processorpath --processor-path | -processor-path
-sourcepath --source-path | -sourcepath
-system --system
-release --release