On Mon, 21 Nov 2022 15:40:19 GMT, Christian Stein <cst...@openjdk.org> wrote:
> This PR copies the `CommandLine.java` file from module `jdk.compiler` > (package `com.sun.tools.javac.main`) into the `jdk.internal.opt` module, > creating a new package with name `jdk.internal.opt`. That new > `jdk.internal.opt` package is then exported to the following modules: > - `jdk.jartool` > - `jdk.jlink` > - `jdk.jpackage` > > Now, `jar`, `jlink`, and `jpackage` use a shared `CommandLine` class. In a > future commit (presumable for JDK 21) the original `CommandLine.java` file > in `jdk.compiler` can and will be replaced with this new one in > `jdk.internal.opt`. Same goes for the `jdk.javadoc` module. > > - [x] Keep `CommandLine.java` in `jdk.compiler` module for the time being due > to "JDK N-1 rule". > - [x] Keep `CommandLine.java` in `jdk.javadoc` module for the time being due > to "JDK N-1 rule". > - [x] Remove `CommandLine.java` from `jdk.jartool` module > - [x] Remove `CommandLine.java` from `jdk.jlink` module > - [x] Remove `CommandLine.java` from `jdk.jpackage` module > - [x] Check for related but renamed(?) usages of `CommandLine.java` in other > JDK tools: `jshell`, `jdeps`, `jfr`, ... I guess git is "confused" by not realizing that the "new" `CommandLine.java` is just a clone of the existing `javac` version. (It is, isn't it ... apart from the package rename?) src/jdk.internal.opt/share/classes/jdk/internal/opt/CommandLine.java line 51: > 49: * If you write code that depends on this, you do so at your own risk. > 50: * This code and its internal interfaces are subject to change or > 51: * deletion without notice.</b> Maybe we can drop this part of the comment ------------- Marked as reviewed by jjg (Reviewer). PR: https://git.openjdk.org/jdk/pull/11272