Alternatives to JAVA

Jenkins: 2.213
OS: Windows Server 2016 - 10.0
Java: 1.8.0_144 - Oracle Corporation (Java HotSpot™ Client VM)

Click to expand plugin list
ace-editor:1.1
ant:1.9
antisamy-markup-formatter:1.6
apache-httpcomponents-client-4-api:4.5.10-2.0
authentication-tokens:1.3
badge:1.8
bouncycastle-api:2.17
branch-api:2.5.5
build-timeout:1.19
cloudbees-folder:6.10.1
command-launcher:1.4
config-autorefresh-plugin:1.0
credentials:2.3.0
credentials-binding:1.18
cvs:2.11
display-url-api:2.3.2
docker-commons:1.14
docker-workflow:1.21
durable-task:1.30
email-ext:2.68
external-monitor-job:1.7
git:4.0.0
git-client:3.0.0
git-server:1.9
github:1.29.5
github-api:1.95
github-branch-source:2.5.8
gradle:1.35
greenballs:1.15
groovy-postbuild:2.5
handlebars:1.1.1
jackson2-api:2.10.1
javadoc:1.5
jdk-tool:1.4
jquery:1.12.4-1
jquery-detached:1.2.1
jsch:0.1.55.1
junit:1.28
ldap:1.21
mailer:1.23
mapdb-api:1.0.9.0
matrix-auth:2.5
matrix-project:1.14
maven-plugin:3.4
momentjs:1.1.1
node-iterator-api:1.5.0
pam-auth:1.6
plain-credentials:1.5
resource-disposer:0.14
robot:2.0.0
ruby-runtime:0.12
scm-api:2.6.3
script-security:1.68
scripted-cloud-plugin:0.12
ssh-credentials:1.17.3
ssh-slaves:1.29.4
structs:1.20
subversion:2.13.0
test-results-analyzer:0.3.5
timestamper:1.9
token-macro:2.10
trilead-api:1.0.4
urltrigger:0.45
vsphere-cloud:2.21
windows-slaves:1.5
workflow-api:2.38
workflow-basic-steps:2.16.1
workflow-cps:2.78
workflow-durable-task-step:2.28
workflow-job:2.36
workflow-scm-step:2.9
workflow-step-api:2.21
workflow-support:3.3
ws-cleanup:0.38
xray-connector:2.2.0

We are controlling the (launched) VMWare VM’s (Windows 10 and 11) using JAVA. However… no matter what instructions I follow in the registry (on the VM) or other settings, every 3 months I have to update JAVA on all the VM’s.

Does anybody know a way of REALLY killing the updater?

If not - are there simple alternatives to controlling Jenkins (RFW) on the VM other than JAVA?

I’m surprised you’re able to run this recent version of Jenkins with Java 8 in the first place. All of the modern container images are using Java 11 or 17.

If you do choose to continue with Java 8, there is an option in the control panel to disable checking for Java 8 updates. Or, you could move away from Oracle’s Java 8 distribution to one of the many others available which do not provide that particular updater as part of their installations.

That’s a very old Jenkins version running with a very old Java version. Jenkins versions since mid-2022 require Java 11 or Java 17.

Jenkins 2.213 is a weekly release from 3.5 years ago. It is susceptible to multiple security vulnerabilities. The current Jenkins weekly release is 2.420. It requires Java 11 or Java 17.

Java 8u144 was released 8 years ago. It is susceptible to multiple security vulnerabilities. The current Java 8 release is 8u382.

If you’re running Java 8u144 from 8 years ago, that seems like you’re not actually updating Java on the VM’s, or if you are updating Java on the VM’s, that update is not being used by Jenkins. You may want to investigate further to understand if the updated Java versions are actually being used by Jenkins.

The Java documentation describes how to disable Java update notifications. Since you indicate that you’ve tried registry settings and nothing works, I’m afraid I don’t have any other suggestions to offer.

I’m assuming that the v8 is what’s being used on the VM since it is the only installed version.

Thank you for the feedback.

V8, doing registry hacks and setting the “don’t bother me” “don’t even CHECK for updates” checkboxes doesn’t kill the check and popup about “JAVA is out of date” (which stops my automation totally)

I know I am using older versions. Last update was probably beginning of 2022. I will be updating. And removing a LOT of unused plugins.

Please note that the JENKINS side of this is not the issue. The JAVA used for Jenkins to talk to on the Windows TEST VM (win10 or 11) is the issue. THAT is what keeps plugging up the system. It becomes a very unpleasant task to have to constantly update the VM’s (in a manner not under MY schedule).

Honestly, I’ve never had an issue with the Java 8 Updater interfering with operations on a system, Jenkins or otherwise. I’ve always been able to just use the Java Updater control panel to disable the check.

PS: Java is not an acronym, it is a name. Don’t capitalize the entire word.

@jp1955 , it seems no one else has mentioned this aspect, but there’s strong likelihood you may not be in compliance with Oracle’s license changes.

The simplest solution is the same as that suggested by others; avoid lining Oracle’s pockets and switch to an OpenJDK variant. Temurin / Hotspot is tested with Jenkins. There are offerings from IBM, RedHat, Microsoft, Amazon, Azul, and a host of others.

Uninstall the existing package from the Control Panel, then install the OpenJDK variant simply by unzipping and updating the PATH manually. We have been doing this to support private legacy instances of Jenkins ( 2.263.4) which requires the deprecated TFS plugin. It’s been running fine with both Temurin (hotspot) and Semeuru (OpenJ9/IBM) 3.382. Temurin and the MS offering tend to be out of the gate fastest, usually a week after Oracle’s release (11 and 17 get priority over 8), with IBM Semeru somewhat later.

That’s a very good point that I had not considered. Thanks @Ian_W

The Jenkins platform SIG stopped testing Jenkins on the Eclipse OpenJ9 / IBM Semeru Java virtual machine two years ago (or more). However, IBM Semeru is the only reasonable choice if you need to run Java 8 on an IBM s390x mainframe because the Hotspot virtual machine is not available for IBM s390x. It worked well for me when I needed Java 8 on s390x.

Later versions of the Eclipse Open9 / IBM Semeru JDK have been reported to have issues when running Jenkins. No one is investigating those issues or putting effort into fixing those issues. Refer to Failed to start Jenkins Continuous Integration Server for a report from one user. The Jenkins issue tracker records others issues with OpenJ9 / Semeru.

If someone wants to investigate and resolve Jenkins issues with OpenJ9 / Semeru, they are welcome to join the platform SIG where we discuss those types of topics.