You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Jenkins Docker image, tag jenkins/jenkins:lts-jdk17
What Operating System are you using (both controller, and any agents involved in the problem)?
Docker image
Reproduction steps
Running Jenkins in Docker using the jenkins/jenkins:lts-jdk17 image, I find that the OpenJDK installed in that image is missing the jmods directory. This directory and its contents are required for using the jpackage tool (which is included in the image, by the way). A build job that relies on running jpackage using standard location for the built-in Java library module definitions, will fail.
Is there perhaps a different location in the image where the jmod files are kept?
If I was a Docker expert I might even be able to update the image with a full JDK installation, but that's beyond the expertise of anyone on my team.
Expected Results
/opt/java/openjdk/jmods exists and contains all the appropriate .jmod files.
A job that uses jpackage and relies on the jmod files runs successfully.
Actual Results
jpackage jobs fail
Anything else?
No response
Are you interested in contributing a fix?
No response
The text was updated successfully, but these errors were encountered:
Firstly, the controller image provided is always going to be minimal as jobs are intended to be run on agents, using e.g. the inbound or ssh agent image.
Even in those images the Java runtime is meant to be small to reduce the size that every user needs to pull whenever they need the image.
The best way forward would be for you to create your own image, either:
Adding another java install for your jpackage
re-installing a full version of Java as the default one
Your own base image which fetches the agent.jar file
I understand all of those points, but I contend that by including jpackage the image should also include the jmods, since without them jpackage isn't really useful for the most common cases (following the Principal of Least Surprise).
I guess you could respond with "OK, we'll strip jpackage from the base image." That's your prerogative it makes the built-in agent less useful.
Jenkins and plugins versions report
Jenkins Docker image, tag jenkins/jenkins:lts-jdk17
What Operating System are you using (both controller, and any agents involved in the problem)?
Docker image
Reproduction steps
Running Jenkins in Docker using the
jenkins/jenkins:lts-jdk17
image, I find that the OpenJDK installed in that image is missing thejmods
directory. This directory and its contents are required for using thejpackage
tool (which is included in the image, by the way). A build job that relies on runningjpackage
using standard location for the built-in Java library module definitions, will fail.Is there perhaps a different location in the image where the jmod files are kept?
If I was a Docker expert I might even be able to update the image with a full JDK installation, but that's beyond the expertise of anyone on my team.
Expected Results
/opt/java/openjdk/jmods
exists and contains all the appropriate.jmod
files.A job that uses
jpackage
and relies on the jmod files runs successfully.Actual Results
jpackage jobs fail
Anything else?
No response
Are you interested in contributing a fix?
No response
The text was updated successfully, but these errors were encountered: