首页 > 解决方案 > Jenkins 代理崩溃/终止原因:java.security.AccessControlException:

问题描述

Nov 02, 2021 9:53:03 AM org.jenkinsci.remoting.engine.JnlpAgentEndpointResolver resolve
INFORMATION: Remoting server accepts the following protocols: [JNLP4-connect, Ping]
Nov 02, 2021 9:53:03 AM org.jenkinsci.remoting.protocol.impl.BIONetworkLayer$Reader run
INFORMATION: Waiting for ProtocolStack to start.
Nov 02, 2021 9:53:08 AM hudson.remoting.UserRequest perform
WARNUNG: LinkageError while performing UserRequest:hudson.slaves.SlaveComputer$SlaveInitializer@6cfcc55d
java.lang.ExceptionInInitializerError


        at hudson.slaves.SlaveComputer$SlaveInitializer.call(SlaveComputer.java:1042)
        at hudson.slaves.SlaveComputer$SlaveInitializer.call(SlaveComputer.java:1033)
        at hudson.remoting.UserRequest.perform(UserRequest.java:211)
        at hudson.remoting.UserRequest.perform(UserRequest.java:54)
        at hudson.remoting.Request$2.run(Request.java:376)
        at hudson.remoting.InterceptingExecutorService.lambda$wrap$0(InterceptingExecutorService.java:78)
        at java.util.concurrent.FutureTask.run(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at hudson.remoting.Engine$1.lambda$newThread$0(Engine.java:122)
        at java.lang.Thread.run(Unknown Source)
    Caused by: java.security.AccessControlException: access denied ("java.util.PropertyPermission" "hudson.util.RingBufferLogHandler.defaultSize" "read")
        at java.security.AccessControlContext.checkPermission(Unknown Source)
        at java.security.AccessController.checkPermission(Unknown Source)
        at java.lang.SecurityManager.checkPermission(Unknown Source)
        at com.sun.javaws.security.JavaWebStartSecurity.checkPermission(Unknown Source)
        at java.lang.SecurityManager.checkPropertyAccess(Unknown Source)
        at java.lang.System.getProperty(Unknown Source)
        at java.lang.Integer.getInteger(Unknown Source)
        at java.lang.Integer.getInteger(Unknown Source)
        at hudson.util.RingBufferLogHandler.<clinit>(RingBufferLogHandler.java:39)
        ... 11 more

我在 Windows 10 上运行了 jenkins 代理,当我通过 jnlp 文件启动代理时,它的连接我可以看到“已连接”,但下一秒就终止了,当我进入 Jenkins/remoting/logs 时,我发现了这个错误,任何一个可以请帮助是什么问题以及为什么它在连接后被终止

我的 Windows 代理有 OpenJDK 1.8.0 对于 Jnlp 我正在使用开放网络启动 Jenkins 在代理和主服务器上是最新版本 2.318 我的主是 linux

按照我已经尝试过的步骤,我将代理 JDK 更新为 JDK11 但没有成功,所以我只是降级它,我尝试重新启动/重启,但没有任何帮助

请任何詹金斯专家可以帮助我

标签: javajenkinsjenkins-pipelineagentjenkins-cli

解决方案


以防将来有人可能会在这里搜索这个问题的答案

问题不在于 jenkins 代理或 jenkins master,而是 jnlp 启动器的问题,就像 Open web start 一样

当我尝试通过 cmd 运行命令并传递 agent.jar 连接我的代理时,它连接到我的主服务器并且工作正常,因此将来任何人都会遇到这样的问题,不要触摸或更改主服务器或代理的 jdk 设置,但试图弄清楚无论您使用什么,java web start 或 Open web start 的安全/证书设置

谢谢


推荐阅读