New candidate JEP: 493: Linking Run-Time Images without JMODs

Alex Buckley alex.buckley at oracle.com
Mon Oct 21 18:19:47 UTC 2024


On 10/21/2024 9:14 AM, Mark Reinhold wrote:
> https://openjdk.org/jeps/493

I was surprised to learn that the jlink tool which can link from a 
run-time image is only available in a JDK built with 
--enable-linkable-runtime. As a user, can I tell if the jlink tool in my 
installed JDK consumes JMODs or consumes run-time images?

I am also not crystal clear whether jlink in a JDK built with 
--enable-linkable-runtime is capable of consuming run-time images _and_ 
JMODs, or just run-time images.

If it can consume run-time images _and_ JMODs, which origin is preferred 
when resolving modules passed to --add-modules?

Can it consume only the run-time image it was built as a part of, or can 
I point --module-path to other run-time images? (presumably built with 
--enable-linkable-runtime themselves)

It would be good if the JEP could clarify these points for all readers.

As an editorial note, this text can't be true: "The jlink tool in the 
resulting JDK works exactly the same way as the jlink tool in a JDK 
built with the default configuration." -- the jlink tool in the 
resulting JDK will extract from the run-time image, not from JMOD files, 
so it's not working "exactly the same way". I think you mean that 
_running_ the jlink tool in the resulting JDK is done in exactly the 
same way.

Alex


More information about the jigsaw-dev mailing list