RFR: 8311302: Allow for jlinking a custom runtime without packaged modules being present [v29]
Alan Bateman
alanb at openjdk.org
Mon Jun 3 12:58:15 UTC 2024
On Sun, 2 Jun 2024 17:41:55 GMT, Alan Bateman <alanb at openjdk.org> wrote:
>> Severin Gehwolf has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 110 commits:
>>
>> - Merge branch 'master' into jdk-8311302-jmodless-link
>> - Fix new line in jlink.properties
>> - Merge branch 'master' into jdk-8311302-jmodless-link
>> - Simplify JLINK_JDK_EXTRA_OPTS var handling
>> - Only add runtime track files for linkable runtimes
>> - Generate the runtime image link diff at jlink time
>>
>> But only do that once the plugin-pipeline has run. The generation is
>> enabled with the hidden option '--generate-linkable-runtime' and
>> the resource pools available at jlink time are being used to generate
>> the diff.
>> - Merge branch 'master' into jdk-8311302-jmodless-link
>> - Use shorter name for the build tool
>> - Review feedback from Erik J.
>> - Remove dependency on CDS which isn't needed anymore
>> - ... and 100 more: https://git.openjdk.org/jdk/compare/4f1a10f8...e1e3f02f
>
> I've been looking through the changes. One thing that I'm wondering about is whether --generate-runtime-link-image should disable the keeping of packaged modules (set JLINK_KEEP_PACKAGED_MODULES to false). It seems surprising to use this configure option and have the jlink command in the build also copy the packaged modules into the image.
>
> (Doing that would of course mean that several existing jlink tests would need some changes, either to `@requires` or to remove the checks for the `jmods` directory)
> @AlanBateman IMO those are orthogonal concepts.
The purpose of --enable-runtime-link-image is to produce a run-time image that is capable of running jlink without the packaged modules. The benefit is is a reducing size on the file system but you don't get that benefit if the packages modules are copied in the image.
So I think we may have the wrong default. Yes, they are separate configure and jlink options but I'm wondering if it would be more sensible to opt-in(not opt-out) to keep the packaged modules when configured with --enable-runtime-link-image.
-------------
PR Comment: https://git.openjdk.org/jdk/pull/14787#issuecomment-2145136017
More information about the build-dev
mailing list