On Wed, 5 Nov 2025 02:08:45 GMT, David Beaumont <[email protected]> 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:
> 
>   Tighted access to new API and undo new path() method.

src/jdk.jlink/share/classes/jdk/tools/jlink/internal/Archive.java line 66:

> 64:          *
> 65:          * @param archive the archive in which this entry exists.
> 66:          * @param path the complete path of the entry, including the 
> module.

Note that now I removed the path() method I added, the path passed here serves 
absolutely no purpose other than to appear in the toString() output. I'd vote 
for removing it completely and simplifying callers.

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

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

Reply via email to