RFR: [lworld] Switch JLink to not use ImageReader API [v8]

Roger Riggs rriggs at openjdk.org
Fri Nov 7 15:56:31 UTC 2025


On Fri, 7 Nov 2025 14:50:18 GMT, David Beaumont <duke at openjdk.org> wrote:

>> Creates a new, narrowed API explicitly for use by jlink, which view the resource entries in a jimage file without the re-mapping of names and invention of synthetic entries inherent in ImageReader.
>> 
>> Another good reason to express this new API as something other than ImageReader is that, to fix issues such as [JDK-8357249](https://bugs.openjdk.org/browse/JDK-8357249), we don't want to have the (System)ImageReader class used directly in jlink code. It's just the wrong abstraction and will make it harder to refactor jlink to use a non-singleton API with a controlled lifetime later. 
>> 
>> I've not added unit tests for the new API (yet), but the fact the PackagedModulesVsRuntimeImageLinkTest passes with preview content in the jimage file means that it's working as expected.
>
> David Beaumont has updated the pull request incrementally with one additional commit since the last revision:
> 
>   comment adjustment

test/jdk/tools/jlink/runtimeImage/PackagedModulesVsRuntimeImageLinkTest.java line 57:

> 55:  * @build tests.* jdk.test.lib.process.OutputAnalyzer
> 56:  *        jdk.test.lib.process.ProcessTools
> 57:  * @run main/othervm/timeout=1200 -ea -esa -DDISABLE_PREVIEW_PATCHING=false -Xmx1g PackagedModulesVsRuntimeImageLinkTest

Should this test (temporarily) be run both with and without the new packaging?

-------------

PR Review Comment: https://git.openjdk.org/valhalla/pull/1721#discussion_r2504248201


More information about the valhalla-dev mailing list