-
-
Notifications
You must be signed in to change notification settings - Fork 250
Description
Not easy to integrate nor fully verified on new JDK support:
-
From @gounthar in feat(linux): add support on Linux for JDK 25 preview in Docker build configurations #1024 (comment):
From the PR body,
Changed the Java runtime image creation with JDK 25-specific module and compression settings on Linux and Windows images.
Question: what's the reasoning behind the choice of these particular modules? Does it have to be different from the other cases?
Starting with JDK 24, you can't import all modules into
jlinkanymore. You must select and list the ones you need. I've included the bare minimum for my use case, but there's no guarantee it will suffice. Time and user feedback will determine its adequacy. -
From @lemeurherve in feat: add JDK25 images docker#2146 (comment):
There is a closed Jetty issue that mentions FileSystemNotFoundException:
Doesn't look relevant, this seems to be it: https://stackoverflow.com/a/77115516/4951015
Adding
jdk.zipfslike in 7a58917 isn't enough unfortunately, failing on boot withhudson.util.IncompatibleVMDetected: -
From @dduportal in feat: add JDK25 images docker#2146 (comment):
Is there a reason against starting with the full JDK? Yes I know we can get a few megabytes less by "generating" our own JDK. But it looks like a lot of trouble (on each JDK upgrade we have this kind of exchange) and a lot of risks (what if our tests do not cover all cases using JDK modules) while we could already provide something to the end users?
I would prefer having the discussion at SIG platform level. I believe we should automate testing a "stripped" JDK way earlier than in the Docker image which is only packaging. If ci.jio could run some ATH branches which runs with stripped (and documented) JDKs, that would feel safer and easier to "only" reproduce here.
And potentially causing issue:
-
From @jonesbusy in feat(linux): add support on Linux for JDK 25 preview in Docker build configurations #1024 (comment)
I'm investigating a bug that occur on Java 25 (all container, both controller and agent).
The httprequest plugin fail all request via
apache-httpcomponents-client-5-api[16:25:10.392+01:00] - java.lang.ExceptionInInitializerError: Exception java.lang.NoClassDefFoundError: jdk/net/Sockets [in thread "samples-ci-dotnet-core-main-225-sxrcq-djzx4-w70wq [#11] for JNLP4-connect connection to elca-jenkins-agent/172.30.70.87:50000 id=2054"] [16:25:10.392+01:00] - at PluginClassLoader for apache-httpcomponents-client-5-api//org.apache.hc.client5.http.impl.io.DefaultHttpClientConnectionOperator.<clinit>(DefaultHttpClientConnectionOperator.java:87)Don't we need jdk.net as well?
I will try to investigate and document my findings
We should remove the use of jlink (at least for new JDKs like JDK25 until proven flawless) in controller and agents images until we have a way to properly test it.
WDYT?