On 08/09/2016 06:12 AM, Jan Lahoda wrote:
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?
Good catch, and no, not intentional. However, the intent was to clean
up javadoc option handling after the patch for new module-related
options for javadoc arives.
-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.
These will need to go at some point. The tools currently support both
old and new option forms, and there will need to be a follow up patch to
clean up remaining use of all old-style options, and system properties,
once the transition period is over.
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