如何不修改系统JAVA_HOME,使用JDK8启动升级后的Jenkins?
解决Jenkins升级后需要Java 8启动的问题
你遇到的核心问题很明确:Jenkins 2.73.3 LTS要求Java 8及以上版本,但系统默认仍用Java 7启动服务。下面一步步帮你搞定安装JDK 8并配置Jenkins用它启动:
第一步:安装JDK 1.8
根据你的Linux发行版选择对应的安装方式:
方式1:通过包管理器安装(推荐,适配Debian/Ubuntu/CentOS/RHEL)
Debian/Ubuntu系列:
执行以下命令安装OpenJDK 8:sudo apt update sudo apt install openjdk-8-jdk -y安装完成后,用这条命令确认版本:
java -version正常会输出类似
openjdk version "1.8.0_XXX"的内容。CentOS/RHEL系列:
执行以下命令安装OpenJDK 8:sudo yum install java-1.8.0-openjdk-devel -y同样用
java -version验证安装结果。
方式2:手动解压安装(适合包管理器无合适版本的情况)
- 下载JDK 8压缩包(比如OpenJDK镜像包),上传到服务器的
/opt目录 - 解压压缩包:
sudo tar -zxvf jdk-8uXXX-linux-x64.tar.gz -C /opt/ - 临时设置环境变量:
要永久生效的话,把这两行添加到export JAVA_HOME=/opt/jdk1.8.0_XXX export PATH=$JAVA_HOME/bin:$PATH/etc/profile或~/.bashrc文件,再执行source /etc/profile刷新配置。
第二步:配置Jenkins服务使用JDK 8
Jenkins服务默认读取系统Java路径,我们需要修改配置文件指定Java 8的路径:
- 找到Jenkins配置文件:Debian/Ubuntu通常在
/etc/default/jenkins,CentOS/RHEL在/etc/sysconfig/jenkins - 编辑文件,找到
JAVA_HOME配置项,替换为你安装的JDK 8路径:- 包管理器安装的OpenJDK 8,路径可能是
/usr/lib/jvm/java-8-openjdk-amd64(Debian/Ubuntu)或/usr/lib/jvm/java-1.8.0-openjdk(CentOS/RHEL) - 手动安装的话,就是解压后的路径,比如
/opt/jdk1.8.0_XXX
修改后类似:
JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 - 包管理器安装的OpenJDK 8,路径可能是
- 保存文件后重启Jenkins服务:
sudo service jenkins restart
第三步:验证是否生效
- 查看Jenkins服务状态:
显示sudo service jenkins statusactive (running)就说明启动成功了。 - 也可以查看日志确认Java版本:
日志里会明确显示Jenkins使用的Java版本是1.8.x。sudo tail -f /var/log/jenkins/jenkins.log
额外注意事项
- 你之前手动复制了Jenkins war包到
/usr/lib/jenkins,要确保这个war包确实是2.73.3 LTS版本,避免版本不匹配的问题。 - 如果修改配置后仍报错,先检查
JAVA_HOME路径是否正确,比如用ls $JAVA_HOME/bin/java确认文件存在。
内容的提问来源于stack exchange,提问作者java13




