Jenkins升级到最新版本后无法启动

1. 场景还原

最近在web界面将jenkins升级到最新版本后,后台无法启动jenkins服务,服务状态如下:

运行jenkins命令提示invalid Java version

bash 复制代码
jenkins --version
jenkins: invalid Java version: java version "1.8.0_202"
Java(TM) SE Runtime Environment (build 1.8.0_202-b08)
Java HotSpot(TM) 64-Bit Server VM (build 25.202-b08, mixed mode)

2. 错误原因

最新版本的 Jenkins 需要更高的 Java 版本(例如 Java 11 或更高)

查看Jenkins官方文档发现最新版本的Jenkins需要Java 17或更高,安装支持的Java版本即可解决问题。

3. 解决方案

1. 安装Java 17

此处以CentOS 7为例,其它操作系统请自行查找

安装 AdoptOpenJDK 仓库

bash 复制代码
yum install -y wget
wget https://packages.adoptium.net/artifactory/api/gpg/key/public
rpm --import public

创建 AdoptOpenJDK 的 yum 仓库配置文件

bash 复制代码
vi /etc/yum.repos.d/adoptium.repo

添加以下内容:

bash 复制代码
[adoptium]
name=AdoptOpenJDK
baseurl=https://packages.adoptium.net/artifactory/rpm/centos/7/x86_64/
enabled=1
gpgcheck=1
gpgkey=https://packages.adoptium.net/artifactory/api/gpg/key/public

安装 Java 17

bash 复制代码
yum install -y temurin-17-jdk

验证安装

bash 复制代码
java -version

2. 切换 Java 版本

安装后,如果系统中有多个版本的 Java,可能需要切换默认的 Java 版本。

列出可用的 Java 版本

bash 复制代码
alternatives --config java

选择 Java 17 的路径: 按提示输入对应的选项编号

验证切换成功

bash 复制代码
java -version

3. 配置 Jenkins 的 JAVA_HOME

编辑 Jenkins 的配置文件

bash 复制代码
vi /etc/sysconfig/jenkins

设置 JAVA_HOME 路径为 Java 17 安装目录

bash 复制代码
JAVA_HOME=/usr/lib/jvm/temurin-17-jdk

保存后重新加载配置并重启 Jenkins

bash 复制代码
source /etc/sysconfig/jenkins
systemctl restart jenkins

4. 验证 Jenkins 是否正常运行

执行命令

bash 复制代码
jenkins --version

或访问web页面,此时jenkins正常运行。

相关推荐
rabbit_pro1 分钟前
Java 文件上传到服务器本地存储
java·服务器·python
妄想出头的工业炼药师9 分钟前
cuda如何安装卸载
linux·运维·服务器
q_191328469514 分钟前
基于Springboot2+Vue2的旅游景点购票系统
java·vue.js·spring boot·后端·mysql·毕业设计·计算机毕业设计
XL's妃妃16 分钟前
Java 基准测试工具 JMH 详细介绍
java·开发语言·测试工具
Z3r4y16 分钟前
【代码审计】RuoYi-4.7.1&4.8.1 Thymeleaf模板注入分析
java·web安全·ruoyi·代码审计·thymeleaf
柳鲲鹏21 分钟前
LINUX下载编译libcamera
linux·运维·服务器
元直数字电路验证26 分钟前
Jakarta EE (原 Java EE) 技术栈概览
java·java-ee
Embedded-Xin35 分钟前
Linux架构优化——spdlog实现压缩及异步写日志
android·linux·服务器·c++·架构·嵌入式
Once_day37 分钟前
Linux之netfilter(1)基础介绍
linux·netfilter
多则惑少则明43 分钟前
【算法题4】找出字符串中的最长回文子串(Java版)
java·开发语言·数据结构·算法