This page is a collaborative entry point for developer resources about developing and testing Jenkins to run on Java 11.
This page is not designed to receive status updates for user-facing issues. But you are more than welcome to check and report such issues so that they show on the dedicated Known Java 11 Compatibility issues wiki page.
See the Java 11 Preview Availability announcement
As a part of JEP-211, we request all plugins to remain compatible with Java 8 for now. But you may still need to run the tests with Java 11 so that you can verify the plugin's behavior. It is possible to pass "jvm" and extra Java properties to Maven Surefire plugin to just run tests, but it is easier to actually build & test plugins with JDK 11. Jenkins development tools have been updated to support that:
plugin-pom:3.29+(changelog). Versions before 3.29 contain some updates to be able to build and test your plugins using JDK 11
Some potential pitfalls to remember about:
See the "Known developer tools issues" for more known issues in Plugin POM and Jenkins plugins.
Since this addition, it is now recommended that you use the following configuration in your plugin:
By default, this will build your plugin:
All this both on Windows and Linux.
Although we request all plugins to remain compatible with Java 8, in some cases it may be reasonable to release an experimental version for Java 11 early adopters.
In order to do that, we provide an Experimental Update Center for Java 11. Since Jenkins 2.155, if you run using Jenkins versions with Java 11 preview, Jenkins and Jenkins Docker plugins.txt installer (e.g. "workflow-support:experimental") will default to this experimental update center. It allows Java 11 early adopters to get patches without requiring deploying snapshots manually:
In order to do an experimental release for Java 11, all the following steps must be performed:
If if you forget about any of the bullets above, the update may impact Java 8 users. The long-term solution is already on its way, but is not delivered yet. Follow if you are interested.
Documented in the PCT repository: https://github.com/jenkinsci/plugin-compat-tester#running-pct-with-custom-java-versions
Current status of many plugins (please comment there to get access, or send an email if you tested another opensource plugin).
Documented on the ATH repository: https://github.com/jenkinsci/acceptance-test-harness/blob/master/docs/JAVA11.md
If you hit this issue about live reloading of resources in Jenkins, the current workaround is "mvn org.jenkins-ci.tools:maven-jenkins-dev-plugin:9.4.5.v20170502-jenkins-1:run"
Please add known issues here. The preferred way is to create or find the associated JIRA in the Jenkins Issue Tracker, and add the
"java11-devtools-compatibility". Then the issue it will automatically show up in the list below.
If you cannot create a JIRA issue, please still feel free to add notes about your findings below.
(associated JIRA board for the following filter)