Jenkins浏览器端启动代理按钮缺失问题求助(Java 11环境)
Jenkins Java 11环境下代理启动图标缺失的解决方案
Java 11的模块化系统确实会导致Jenkins“让代理连接至控制器”模式下的启动图标(JNLP下载按钮)无法正常显示,这是因为Java 11限制了Jenkins UI组件依赖的部分模块访问权限。不需要更换代理部署方式,改用手动复制命令启动代理即可解决,步骤如下:
1. 确认控制器入站代理配置
- 进入Jenkins管理页面 → 管理节点和云 → 配置全局安全
- 确保“入站代理”的TCP端口已启用(随机或固定端口均可,记住当前端口),保存配置
2. 获取代理启动命令
- 完成节点创建(选择“让代理连接至控制器”模式)后,进入该节点的详情页面
- 页面中会显示一段完整的代理启动命令,格式类似:
java -jar agent.jar -jnlpUrl http://your-jenkins-url/computer/your-node-name/slave-agent.jnlp -secret your-secret-key -workDir "/path/to/remote/workdir" - 复制这段命令
3. 在代理机器上启动代理
- 从Jenkins控制器地址
http://your-jenkins-url/jnlpJars/agent.jar下载agent.jar到代理机器的工作目录 - 打开终端/命令提示符,切换到agent.jar所在目录,执行复制的命令
- 命令执行成功后,代理会自动连接控制器,节点状态将变为在线
可选:恢复UI启动图标(不稳定)
若想尝试恢复启动图标,可在Jenkins控制器的启动参数中添加以下Java参数,然后重启Jenkins:
--add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.io=ALL-UNNAMED
但该方式可能随Jenkins版本更新失效,手动命令启动是更可靠的方案。
内容的提问来源于stack exchange,提问作者ghost654
相关产品推荐
相关产品推荐

