← Back to issue list

Allow customizing jdeps for jlink plugin

View original Github issue

Metadata

Project
craft-parts
Number
#1385
Type
issue
State
closed
Author
vpa1977
Labels
—
Created
Updated
Closed

Current evaluation

Implemented by merged PR canonical/craft-parts#1384 (ec9244b2), adding jlink-multi-release and jlink-modules to customize or bypass jdeps dependency detection.

Resolution: closed resolved

Reason: PR #1384 merged with all CI checks passed, adding both requested JLink options in commit ec9244b2. The feature was subsequently listed in the 2.27.0 changelog.

Evaluated by: mr-cal-bot

No scores available.

Issue body

### What needs to get done In order to allow end user build rocks that will not break on OpenJDK update provide additional options for jlink plugin: - jlink-multi-release - allow overriding multi-release setting when the list of required modules needs to be determined dynamically. - jlink-modules - allow specifying the list of modules entirely bypassing jdeps tool when it is known upfront. ### Why it needs to get done Jlink plugin uses --multi-release option to select OpenJDK release for jdeps tool. It selects appropriate OpenJDK release for multi-release jar. The option by default is set to the used OpenJDK release. When building with newer OpenJDK jdeps tool may fail if some of the dependencies were not yet rebuilt for this release. The build stage for jdeps involves unpacking all the jar files and putting them on the combined classpath for jdeps tool. An end user may benefit from skipping this step altogether and just providing the necessary modules - this decreases the build time and protects the user from the failures caused by --multi-release option and changes in jdeps tool when the user upgrades OpenJDK.

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha — closed resolved Implemented by merged PR canonical/craft-parts#1384 (ec9244b2), adding jlink-multi-release and jlink-modules to customize or bypass jdeps dependency detection.
stealth/space-bunny-alpha — closed stale Closed unimplemented after prolonged inactivity; the proposed jlink-multi-release and jlink-modules options were not added.
stealth/space-bunny-alpha — closed stale Closed unimplemented after prolonged inactivity; the proposed jlink-multi-release and jlink-modules options were not added.
qwen/qwen3.6-35b-a3b — — Closed without implementation. The feature request to add jlink-multi-release and jlink-modules options to bypass jdeps was abandoned due to zero comments and inactivity.
qwen/qwen3.6-35b-a3b — — Closed without implementation due to inactivity. The proposed jlink plugin options to bypass jdeps were abandoned.
qwen/qwen3.6-35b-a3b — — The request to add jlink-multi-release and jlink-modules options to the jlink plugin was closed without implementation and appears abandoned.
qwen3.6-35b-a3b-mtp-q6 — — Closed without implementation, likely abandoned or rejected due to lack of discussion or activity.

Update history

No update history recorded yet.

Related work

  • Likely Fixed By: canonical/craft-parts#1384 (confidence 100%)

    The merged PR implements the requested multi-release override and explicit module-list bypass.

Related issues

Issue Project State Summary Similarity
#1384 feat: allow to override jdeps craft-parts merged Merged as commit ec9244b2, adding jlink-multi-release and jlink-modules overrides to the JLink plugin; all CI checks passed.
77%