Skip to content

non-blocking error when starting a Jenkins Agent using Java 21 #674

Description

@gjabouley-invn

Jenkins and plugins versions report

Environment
Jenkins: 2.541.3
OS: Linux - 5.15.0-164-generic
Java: 21.0.9 - Eclipse Adoptium (OpenJDK 64-Bit Server VM)
---
Exclusion:0.15
all-changes:1.5
analysis-model-api:13.21.0-945.va_f5a_0b_c1404b_
android-emulator:664.ve25e686a_c00b_
ant:520.vd082ecfb_16a_9
antisamy-markup-formatter:173.v680e3a_b_69ff3
anything-goes-formatter:19.v3e2b_1b_3e0ee5
apache-httpcomponents-client-4-api:4.5.14-269.vfa_2321039a_83
apache-httpcomponents-client-5-api:5.6-193.vf028a_770a_fa_c
asm-api:9.9.1-189.vb_5ef2964da_91
audit-trail:436.vc0d1e79fc5a_3
authentication-tokens:1.144.v5ff4a_5ec5c33
authorize-project:2.0.0
aws-credentials:254.v978a_5e206a_d7
aws-java-sdk-ec2:1.12.780-480.v4a_0819121a_9e
aws-java-sdk-minimal:1.12.780-480.v4a_0819121a_9e
aws-java-sdk2-core:2.42.33-70.vd69c0763fa_60
aws-java-sdk2-ec2:2.42.33-70.vd69c0763fa_60
badge:2.562.vc3c0b_6925377
bootstrap5-api:5.3.8-895.v4d0d8e47fea_d
bouncycastle-api:2.30.1.84-291.v9f17b_21896e2
branch-api:2.1280.v0d4e5b_b_460ef
build-timeout:1.40
caffeine-api:3.2.3-194.v31a_b_f7a_b_5a_81
categorized-view:197.v335f4625b_2e8
checks-api:402.vca_263b_f200e3
cloudbees-folder:6.1098.vb_9a_23a_b_c566a_
command-launcher:134.v025a_5fcf9dea_
commons-compress-api:1.28.0-3
commons-lang3-api:3.20.0-109.ve43756e2d2b_4
commons-text-api:1.15.0-218.va_61573470393
conditional-buildstep:1.5.0
configuration-as-code:2074.va_57f83f7a_10b_
copyartifact:795.ve8e151429b_27
coverage:2.3139.v731d2e83ea_8a_
credentials:1502.v5c95e620ddfe
credentials-binding:719.v80e905ef14eb_
cvs:502.v02d5a_0c6b_9a_3
dashboard-view:2.558.v96b_901978e47
data-tables-api:2.3.7-1534.v539d4edf109d
display-url-api:2.217.va_6b_de84cc74b_
docker-commons:472.vee120e23d3a_c
docker-workflow:634.vedc7242b_eda_7
dtkit-api:3.0.3
durable-task:664.v2b_e7a_dfff66c
echarts-api:6.0.0-1247.vf3e35a_c1813f
eddsa-api:0.3.0.1-29.v67e9a_1c969b_b_
email-ext:1933.v45cec755423f
emoji-symbols-api:17.0-57.v8d44b_9a_b_d5ea_
envinject:2.934.vc674e76cf954
envinject-api:1.237.v82803a_511906
extensible-choice-parameter:255.vfa_41f46828ef
external-monitor-job:223.vb_fddcf42c9b_3
ez-templates:1.3.5
file-operations:439.vdc9d3b_d74b_d9
flexible-publish:0.16.1
font-awesome-api:7.2.0-965.ve3840b_696418
forensics-api:3.1832.va_1179842528b_
git:5.10.1
git-client:6.6.0
git-server:137.ve0060b_432302
github:1.46.0
github-api:1.330-492.v3941a_032db_2a_
github-branch-source:1967.vdea_d580c1a_b_a_
github-scm-trait-notification-context:45.v8ef831829589
gradle:2.19.1244.v1f9866817fec
groovy:537.v741a_5a_f1b_581
groovy-postbuild:303.v5fe3da_6233f0
gson-api:2.13.2-198.v45e4a_55d9b_a_a_
htmlpublisher:427
http_request:1.25
instance-identity:203.v15e81a_1b_7a_38
ionicons-api:94.vcc3065403257
jackson2-api:2.21.2-433.v6d50b_92cfe52
jackson3-api:3.1.2-71.v0a_23916945fe
jakarta-activation-api:2.1.4-1
jakarta-mail-api:2.1.5-1
jakarta-xml-bind-api:4.0.6-12.vb_1833c1231d3
javadoc:354.vee1a_660b_4990
javax-activation-api:1.2.0-8
javax-mail-api:1.6.2-11
jaxb:2.3.9-143.v5979df3304e6
jdk-tool:83.v417146707a_3d
jjwt-api:0.11.5-120.v0268cf544b_89
jnr-posix-api:3.1.22-204.v925e2b_09a_42c
jobConfigHistory:1356.ve360da_6c523a_
joda-time-api:2.14.1-187.vdf2def02b_8a_1
jquery:1.12.4-3
jquery3-api:3.7.1-619.vdb_10e002501a_
jsch:0.2.16-95.v3eecb_55fa_b_78
json-api:20251224-185.v0cc18490c62c
json-path-api:3.0.0-218.vcd4dd1355de2
jsoup:1.22.1-76.v9cdb_2456c0e3
junit:1403.vd9d1413fd205
ldap:807.v7d7de30930cf
locale:614.va_6a_5a_1a_f2b_38
lockable-resources:1493.v0db_447235039
login-theme:325.v94b_7548124cb_
mail-watcher-plugin:1.21
mailer:534.v1b_36f5864073
mapdb-api:1.0.9-44.va_1e1310c9118
mask-passwords:212.v4967a_a_73b_506
matrix-auth:3.2.9
matrix-project:870.v9db_fcfc2f45b_
maven-plugin:3.27
metrics:4.2.37-494.v06f9a_939d33a_
mina-sshd-api-common:2.16.0-167.va_269f38cc024
mina-sshd-api-core:2.16.0-167.va_269f38cc024
monitoring:2.6.0
msbuild:1.40
naginator:1.556.v14d723a_109a_c
nodelabelparameter:851.vd94e5048d321
okhttp-api:5.3.2-200.vedb_720a_cf1f8
oss-symbols-api:442.v99039087229b_
pam-auth:1.12
parameterized-trigger:890.vc240a_a_e1217f
people-view:1.16.v774d3b_4b_3a_f3
pipeline-build-step:584.vdb_a_2cc3a_d07a_
pipeline-githubnotify-step:49.vf37bf92d2bc8
pipeline-graph-analysis:254.v0f63a_a_447dca_
pipeline-graph-view:819.ved496c19e082
pipeline-groovy-lib:797.v90ea_a_9b_e45a_0
pipeline-input-step:551.vdff487c5998c
pipeline-milestone-step:152.v6e22b_8cfc66c
pipeline-model-api:2.2277.v00573e73ddf1
pipeline-model-definition:2.2277.v00573e73ddf1
pipeline-model-extensions:2.2277.v00573e73ddf1
pipeline-rest-api:2.40
pipeline-stage-step:345.va_96187909426
pipeline-stage-tags-metadata:2.2277.v00573e73ddf1
pipeline-stage-view:2.40
pipeline-utility-steps:2.20.0
plain-credentials:199.v9f8e1f741799
plot:2.4.0
plugin-usage-plugin:418.v308c3c863d25
plugin-util-api:6.1192.v30fe6e2837ff
port-allocator:351.v7a_94cf6e4677
prism-api:1.30.0-717.vb_f8360844b_53
publish-over:238.v1db_583004c9b_
repo:1.17.0
resource-disposer:0.25
rich-text-publisher-plugin:1.5
run-condition:276.v97298f3a_cd51
scm-api:728.vc30dcf7a_0df5
script-security:1399.ve6a_66547f6e1
sectioned-view:1.32
simple-theme-plugin:230.v8b_fd91b_b_800c
snakeyaml-api:2.5-149.v72471e9c6371
snakeyaml-engine-api:3.0.1-5.vd98ea_ff3b_92e
sonar:2.18.2
ssh-agent:386.v36cc0c7582f0
ssh-credentials:372.va_250881b_08cd
ssh-slaves:3.1097.v868116049892
sshd:3.384.vc89b_5e138cf9
structs:362.va_b_695ef4fdf9
subversion:1303.vcfd9679fb_c12
text-finder:1.33
throttle-concurrents:625.vc8b_e469e9a_b_c
timestamper:1.30
token-macro:477.vd4f0dc3cb_cf1
trilead-api:2.284.v1974ea_324382
uno-choice:2.8.9
variant:70.va_d9f17f859e0
versioncolumn:400.v3c5c3004f31d
view-job-filters:406.va_0ec67147ee2
warnings-ng:12.10012.v753ff0d0363a_
woodstox-core-api:7.1.1-1.v4d297985f397
workflow-aggregator:608.v67378e9d3db_1
workflow-api:1413.v2ff1a_5e720fa_
workflow-basic-steps:1098.v808b_fd7f8cf4
workflow-cps:4285.v8df38f05c3c5
workflow-durable-task-step:1475.ved562f6ec8b_3
workflow-job:1571.vb_423c255d6d9
workflow-multibranch:821.vc3b_4ea_780798
workflow-scm-step:466.va_d69e602552b_
workflow-step-api:724.v538c2362b_dfb_
workflow-support:1015.v785e5a_b_b_8b_22
ws-cleanup:0.49
xunit:3.1.6

What Operating System are you using (both controller, and any agents involved in the problem)?

  • Linux Ubuntu (22.04 LTS and 24.04 LTS)
  • Windows 2019 server
  • RPI
  • ...

Reproduction steps

  1. Connect to build agent using SSH and Java 21, with options --add-opens java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED

Expected Results

No error in logs

Actual Results

Seeing following log:

ERROR: Unexpected error in launching an agent. This is probably a bug in Jenkins
java.lang.IllegalAccessException: static final field has no write access: hudson.EnvVars.masterEnvVars/java.util.Map/putStatic, from class java.lang.Object (module java.base)
	at java.base/java.lang.invoke.MemberName.makeAccessException(MemberName.java:894)
	at java.base/java.lang.invoke.MethodHandles$Lookup.unreflectField(MethodHandles.java:3597)
	at java.base/java.lang.invoke.MethodHandles$Lookup.unreflectSetter(MethodHandles.java:3588)
	at java.base/java.lang.invoke.MethodHandleImpl$1.unreflectField(MethodHandleImpl.java:1632)
	at java.base/jdk.internal.reflect.MethodHandleAccessorFactory.newFieldAccessor(MethodHandleAccessorFactory.java:146)
Also:   hudson.remoting.Channel$CallSiteStackTrace: Remote call to build-agent
		at hudson.remoting.Channel.attachCallSiteStackTrace(Channel.java:1916)
		at hudson.remoting.UserRequest$ExceptionResponse.retrieve(UserRequest.java:384)
		at hudson.remoting.Channel.call(Channel.java:1108)
		at hudson.FilePath.act(FilePath.java:1308)
		at PluginClassLoader for envinject//org.jenkinsci.plugins.envinject.EnvInjectComputerListener.onOnline(EnvInjectComputerListener.java:144)
		at hudson.slaves.SlaveComputer.setChannel(SlaveComputer.java:755)
		at hudson.slaves.SlaveComputer.setChannel(SlaveComputer.java:442)
		at PluginClassLoader for ssh-slaves//hudson.plugins.sshslaves.SSHLauncher.startAgent(SSHLauncher.java:645)
		at PluginClassLoader for ssh-slaves//hudson.plugins.sshslaves.SSHLauncher.lambda$launch$0(SSHLauncher.java:464)
		at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
		at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
		at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
		at java.base/java.lang.Thread.run(Unknown Source)
Caused: java.lang.InternalError
	at java.base/jdk.internal.reflect.MethodHandleAccessorFactory.newFieldAccessor(MethodHandleAccessorFactory.java:168)
	at java.base/jdk.internal.reflect.ReflectionFactory.newFieldAccessor(ReflectionFactory.java:145)
	at java.base/java.lang.reflect.Field.acquireOverrideFieldAccessor(Field.java:1200)
	at java.base/java.lang.reflect.Field.getOverrideFieldAccessor(Field.java:1169)
	at java.base/java.lang.reflect.Field.set(Field.java:836)
	at PluginClassLoader for envinject//org.jenkinsci.plugins.envinject.service.EnvInjectMasterEnvVarsSetter.call(EnvInjectMasterEnvVarsSetter.java:70)
	at PluginClassLoader for envinject//org.jenkinsci.plugins.envinject.service.EnvInjectMasterEnvVarsSetter.call(EnvInjectMasterEnvVarsSetter.java:19)
	at hudson.remoting.UserRequest.perform(UserRequest.java:225)
	at hudson.remoting.UserRequest.perform(UserRequest.java:50)
	at hudson.remoting.Request$2.run(Request.java:391)
	at hudson.remoting.InterceptingExecutorService.lambda$wrap$0(InterceptingExecutorService.java:81)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
	at java.base/java.lang.Thread.run(Thread.java:1583)
Caused: java.io.IOException: Remote call on agentname failed
	at hudson.remoting.Channel.call(Channel.java:1112)
	at hudson.FilePath.act(FilePath.java:1308)
	at PluginClassLoader for envinject//org.jenkinsci.plugins.envinject.EnvInjectComputerListener.onOnline(EnvInjectComputerListener.java:144)
	at hudson.slaves.SlaveComputer.setChannel(SlaveComputer.java:755)
	at hudson.slaves.SlaveComputer.setChannel(SlaveComputer.java:442)
	at PluginClassLoader for ssh-slaves//hudson.plugins.sshslaves.SSHLauncher.startAgent(SSHLauncher.java:645)
	at PluginClassLoader for ssh-slaves//hudson.plugins.sshslaves.SSHLauncher.lambda$launch$0(SSHLauncher.java:464)
	at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.base/java.lang.Thread.run(Unknown Source)

Anything else?

Note this seems not blocking

Are you interested in contributing a fix?

Sure

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions