RFR: 8237467: effect of jlink plugins for vendor information and command-line options should be sticky
Doug Simon
dnsimon at openjdk.org
Tue Sep 27 20:54:20 UTC 2022
On Tue, 27 Sep 2022 19:11:07 GMT, Mandy Chung <mchung at openjdk.org> wrote:
>> This PR adds a new jlink plugin (`--save-jlink-argfiles=<filenames>`) to support persisting jlink options.
>>
>>
>>> echo "--add-modules jdk.internal.vm.ci --add-options=-Dfoo=xyzzy --vendor-version="XyzzyVM 3.14.15" --vendor-bug-url=https://bugs.xyzzy.com/" > my_image.argfile
>>> export ALL_MODULES=$(java --list-modules | sed 's:@.*::g' | tr '\n' ',')
>>> jlink --keep-packaged-modules=my_image/jmods --add-modules $ALL_MODULES --output=my_image --save-jlink-argfiles my_image.argfile
>>> my_image/bin/java -XshowSettings:properties --version 2>&1 | grep yzzy
>>> my_image/bin/jlink --add-modules=java.base --output=my_image2
>>> my_image2/bin/java -XshowSettings:properties --version 2>&1 | grep yzzy
>> foo = xyzzy
>> java.vendor.url.bug = https://bugs.xyzzy.com/
>> java.vendor.version = XyzzyVM 3.14.15
>> OpenJDK Runtime Environment XyzzyVM 3.14.15 (build 20-internal-2022-09-22-0951036.dnsimon...)
>> OpenJDK 64-Bit Server VM XyzzyVM 3.14.15 (build 20-internal-2022-09-22-0951036.dnsimon..., mixed mode)
>>> my_image2/bin/java -d jdk.internal.vm.ci | head -1
>> jdk.internal.vm.ci at 20-internal
>
> test/jdk/tools/jlink/plugins/SaveJlinkArgfilesPluginTest.java line 81:
>
>> 79: // Check that the primary image creation ignored the saved args
>> 80: oa.shouldHaveExitValue(0);
>> 81: oa.shouldNotMatch("yzzy");
>
> Can this check for `java.vendor.version = XyzzyVM 3.14.15`, that will also help the reader to understand what the test tries to verify.
Not sure follow as this is a negative match. I don't want it to match `java.vendor.url.bug = https://bugs.xyzzy.com/`, `java.vendor.version = XyzzyVM 3.14.15` or `foo = xyzzy`. I'll expand it out to 3 tests.
-------------
PR: https://git.openjdk.org/jdk/pull/10445
More information about the core-libs-dev
mailing list