Docker容器里面部署的Jenkins的Java17升级到21版本(无需删除之前容器,内部在线升级) - 攻城狮

news/2025/10/27 17:13:25/文章来源:https://www.cnblogs.com/zcjbky/p/19169633

发现Jenkins出现了如此提示:

Java 17 end of life in Jenkins
You are running Jenkins on Java 17, support for which will end on or after Mar 31, 2026. Refer to the documentation for more details.

image

 

原因是java17将逐渐退出舞台,取而代之的是java21。Jenkins也在逐步升级淘汰java版本。

解决办法:

1、输入命令进入容器内部,查询当前版本

docker exec -it -u root <容器名或ID> /bin/bash
java -version

确认当前版本为OpenJDK 17(如 openjdk version "17.0.8.1")。

image

 2、添加相关三方库(如果遇到 Unable to locate package openjdk-21-jdk 错误,说明默认仓库可能不包含Java 21,需要手动添加仓库)

# 添加第三方仓库(如Adoptium或Azul Zulu)
apt-get install -y wget
wget -O - https://packages.adoptium.net/artifactory/api/gpg/key/public | apt-key add -
echo "deb https://packages.adoptium.net/artifactory/deb $(awk -F= '/^VERSION_CODENAME/{print$2}' /etc/os-release) main" > /etc/apt/sources.list.d/adoptium.list
apt-get update && apt-get install -y temurin-21-jdk

3、更新软件包索引并安装OpenJDK 21

apt-get update && apt-get install -y openjdk-21-jdk

4、验证安装

java -version

预期输出应包含 openjdk version "21.x.x"。(若还是OpenJDK 17,则继续往下看)

5、设置默认JDK(如果已有多个版本)​

update-alternatives --config java

你会看到类似这样的选项:

image

 输入 2(选择 OpenJDK 21),然后按 Enter 确认。

再次运行:java -version 

如果仍然显示 17,可能是:

  1.PATH 环境变量未更新​(见下一步)。

  2.某些进程缓存了旧 JDK 路径​(需重启容器)。

6、检查 PATH 环境变量​

echo $PATH

确保 /usr/lib/jvm/temurin-21-jdk-amd64/bin 在 PATH 中,并且优先级高于旧版本 JDK 路径(如 /usr/lib/jvm/java-17-openjdk-amd64/bin)。

如果 PATH 不正确,可以手动更新:

echo 'export PATH=/usr/lib/jvm/temurin-21-jdk-amd64/bin:$PATH' >> ~/.bashrc
source ~/.bashrc

再次查看java -version 显示正常

image

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/947916.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

布谷直播系统源码:高并发直播架构设计到搭建部署配置

在移动互联网时代,直播已成为内容传播、电商带货和社交互动的核心载体。面对动辄百万甚至千万级的瞬时用户涌入,如何构建一个稳定、流畅、可扩展的高并发直播系统,是每个技术团队必须攻克的堡垒。山东(泰安)布谷科技…

25.10.27联考题解

CF2110D 求最小值的问题可以考虑转化成二分答案然后判断合法性。于是先二分答案,然后发现判断合法性本质就是判断连通性,因为是 DAG 于是考虑拓扑排序维护到一个点的合法最大值即可。 B 考虑 \(k=0\) 怎么做?我们直…

医疗器械行业数字化破局:一体化平台正在淘汰多系统集成模式

当“系统集成”消耗企业30%IT预算的时代即将结束,一体化架构正重新定义医疗供应链数字化当“系统集成”消耗企业30%IT预算的时代即将结束,一体化架构正重新定义医疗供应链数字化 “我们使用了五套系统,CRM管客户、E…

报表知识

FORM frm_pf_status USING lt_status_name TYPE slis_t_extab. SET PF-STATUS PF_1000EXCLUDING lt_status_name. . ENDFORM. DATA: gt_excluding TYPE slis_t_extab. " ALV工具栏按钮排除表 CLEAR gt_excluding…

【IEEE出版 | 往届均已完成见刊检索 | 见刊检索稳定】第七届信息与计算机前沿术国际学术会议(ICFTIC 2025)

第七届信息与计算机前沿技术国际学术会议(ICFTIC 2025)将在中国青岛举行,会期是2025年12月5-7日。【中国石油大学(华东)、山东省智能人工学会、山东计算机学会主办】 【往届均已完成见刊检索,见刊检索稳定】 第七届信…

动态点分树

讲解动态点分树,附例题及代码。更新日志 2025/10/27:开工。概念 首先你应当会点分树。 动态点分树可以支持每次加一个叶子结点并动态维护点分树结构平衡的数据结构。 思路 利用替罪羊树的思想,考虑 \(\alpha\) 重构…

2025年隔热条厂家权威推荐榜:尼龙隔热条/PA66尼龙隔热条/建筑用隔热条/断桥铝门窗隔热条/幕墙隔热条/阳光房隔热条/国标隔热条精选

2025年隔热条厂家权威推荐榜:尼龙隔热条/PA66尼龙隔热条/建筑用隔热条/断桥铝门窗隔热条/幕墙隔热条/阳光房隔热条/国标隔热条精选 随着建筑节能要求的不断提高和绿色建筑理念的深入推广,隔热条作为建筑节能的关键材…

【前端效率工具】:告别右键另存,不到 50 行代码一键批量下载网页图片

🧑‍💻 写在开头 点赞 + 收藏 === 学会🤣🤣🤣先看效果:在素材网站一键批量保存所有图片废话不多说,直接上手! 项目结构image-downloader-extension ├── manifest.json # 扩展的"身份证"…

特殊符号的输入

特殊符号的输入符号 说明 Alt编码© 版权符号 Alt+0169 注册商标 Alt+0174™ 商标 Alt+0153• 项目符号 Alt+0149 正负号 Alt+0177 乘号 Alt+0215 除号 Alt+0247 度 Alt+0176… 省略号 Alt+0133√ 对勾 Alt+251≤ …

Luogu P3237 [HNOI2014] 米特运输 题解 [ 蓝 ] [ 树形 DP ] [ 哈希 ]

米特运输 不是很难,但是思路很巧妙的一道题。 手模样例,观察合法方案的性质,容易发现,只要有一个节点权值是固定的,那么整棵树所有节点的权值便也固定了。 而由于每个节点之间是倍数关系,因此我们需要一个基本单…

「Gym 104901F」Say Hello to the Future

题目大意 给定一个序列,定义其权值为划分序列的方案数,使得划分出来的每个区间 \([l, r]\) 有 \(\max_{i = l}^r {a_i} \leq r - l + 1\) 。对于每个 \(1 \leq i \leq n\) 求只将 \(a_i\) 修改为 \(1\) ,序列的权值…

渐进过程中大O与小o混用

在数学中,大O符号(O)和小o符号(o)都用于描述函数的渐进行为,但它们的含义和强度不同。在实际使用中,需要注意它们的定义和适用场景,以避免误用。 \(O(x)\) 表示一个函数的渐进上界。具体来说,如果存在正常数C…

Navicat 17 超详细保姆级下载安装教程:附激活工具使用步骤​

这篇教程给你讲的Navicat 17安装方法,从下载到激活一步不落,中间碰到问题也能帮你解决,跟着做保准能装好。​这篇教程给你讲的Navicat 17安装方法,从下载到激活一步不落,中间碰到问题也能帮你解决,跟着做保准能装…

消息队列的有序性

RabbitMQ单一队列和单一消费者模式:确保一个队列只被一个消费者消费,这样可以保证消息按照发送的顺序被处理。因为队列本身就是一个先进先出的结构。 消息排序:在消息生产者端,为消息添加序列号和时间戳,消费者根…

【LTDC】DMA2D —— 嵌入式系统的 GPU

前言 ST 公司设计了一个专门用于图像处理的 DMA:DMA2D,可以之际通过 DMA2D 搬运或填充图像,而不经过 CPU,极大减轻了 CPU 的负担。为了学习 DMA2D,我也专门写了这篇文章,现在就让我们来看看吧! DMA2D 工作模式 …

各个版本的sqlite-jdbc jar下载链接

https://repo1.maven.org/maven2/org/xerial/sqlite-jdbc

[电脑]win10下SVN图标不显示

[电脑]win10下SVN图标不显示转自 : https://blog.csdn.net/qq_43331089/article/details/128876896win10系统的SVN图标不现实了。正常情况下,会在文件夹上有一个对勾 但是对勾以及所有的SVN图标都突然消失了,都不知道…

2025/10/27~2025/11/2 做题笔记 - sb

2025/10/27 第一代图灵机 一样的套路,考虑每一个右端点对应的最左边可以到哪里,显然是最小的 \(j\) 使得 \(\max\limits_{j \le k \le i}pre_k = j - 1\)。考虑线段树维护一个区间内的最大的答案和最大的 \(pre_i\),…

echart - f

series: [{name: "直接访问",type: "bar",// 修改柱子宽度barWidth: "35%",data: [200, 300, 300, 900, 1500, 1200, 600],itemStyle: {// 修改柱子圆角barBorderRadius: 5}}]series中的…

完整教程:LinuxC++——etcd分布式键值存储系统入门

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …