14 RFR (M) 8232080: jlink plugins for vendor information and run-time options

Magnus Ihse Bursie magnus.ihse.bursie at oracle.com
Tue Oct 22 09:45:41 UTC 2019


On 2019-10-22 05:22, mark.reinhold at oracle.com wrote:
> RFE: https://bugs.openjdk.java.net/browse/JDK-8232080
> CSR: https://bugs.openjdk.java.net/browse/JDK-8232753
> Webrev: https://cr.openjdk.java.net/~mr/rev/8232080/
Build changes look good.

/Magnus
>
> This change implements jlink plugins, and associated changes in the VM
> and libraries, to support the following new jlink options:
>
>    - --vendor-bug-url=<vendor-bug-url> overrides the vendor bug URL baked
>      into the build.  The value of the system property "java.vendor.url.bug"
>      will be <vendor-bug-url>.
>
>    - --vendor-vm-bug-url=<vendor-vm-bug-url> overrides the vendor VM bug
>      URL baked into the build.  This value will be displayed in VM error
>      logs.
>
>    - --vendor-version=<vendor-version> overrides the vendor version string
>      baked into the build, if any.  The value of the system property
>      "java.vendor.version" will be <vendor-version>.  This value will be
>      displayed in the output of java --version.
>
>    - --add-options=<options> prepends the specified <options> string,
>      which may include whitespace, before any other options when invoking
>      the VM in the resulting image.
>
> The vendor-information plugins work by using the JDK’s internal ASM
> library to redefine static fields in the java.lang.VersionProps class.
> The VM reads the vendor-version and vendor-vm-bug-url strings from that
> class during startup.
>
> The add-options plugin works by storing the requested options in an
> internal resource, /java.base/jdk/internal/vm/options.  The VM loads that
> resource from the lib/modules jimage file during startup and prepends any
> options found there to those given on the command line.
>
> Passes tier1-3 and JCK on {linux,macos,windows}-x64.
>
> Thanks,
> - Mark




More information about the build-dev mailing list