Skip to content

Update jlink linker to support JDK release with no *.jmod files#1152

Merged
barchetta merged 6 commits intohelidon-io:masterfrom
barchetta:4.x-java25-no-jmod
Jan 16, 2026
Merged

Update jlink linker to support JDK release with no *.jmod files#1152
barchetta merged 6 commits intohelidon-io:masterfrom
barchetta:4.x-java25-no-jmod

Conversation

@barchetta
Copy link
Member

@barchetta barchetta commented Jan 15, 2026

Fixes #1147

This PR:

  1. Removes the use of jmod files by the Helidon linker. Instead it uses ModuleFinder, ModuleReader and ModuleDescriptor
  2. Removes the ability for linker/util/JavaRuntime to point at an arbitrary JDK on the filesystem. This capability was never used and I assume it was part of the reason the linker poked around the filesystem for jmod files. JavaRuntime now always represents the "current" java runtime that is running the linker.
  3. Removes the ability for JavaRuntime to represent the "built" custom JRI. This, combined with 2 greatly simplifies the class.
  4. Make adjustments to other classes to accommodate the above.

With these changes I have verified the linker works with Temurin JDK 25 without jmod files.

@barchetta barchetta self-assigned this Jan 15, 2026
@oracle-contributor-agreement oracle-contributor-agreement bot added the OCA Verified All contributors have signed the Oracle Contributor Agreement. label Jan 15, 2026
@barchetta barchetta merged commit 6546973 into helidon-io:master Jan 16, 2026
24 checks passed
@romain-grecourt romain-grecourt added this to the 4.0.24 milestone Jan 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

4.x JLink OCA Verified All contributors have signed the Oracle Contributor Agreement.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

jlink not working with Java 24/25 without *.jmod files.

2 participants