在 CentOS 上给 Jenkins 配置 JDK,常用有 三种方式。下面按「最推荐 → 次推荐 → 特殊场景」来说明,基本照着做就能跑起来。
适合 Jenkins 可联网 的情况。
Jenkins → Manage Jenkins → Tools(全局工具配置)
| 选项 | 说明 |
|---|---|
| Name | 例:jdk8 / jdk11 |
| Vendor | Adoptium / Oracle |
| Version | 选择版本 |
| 勾选自动安装 | ✅ |
✅ Jenkins 会在构建时自动下载并安装 JDK
# 查看可用版本
yum search java | grep openjdk
# 安装 JDK 11
sudo yum install -y java-11-openjdk java-11-openjdk-devel
# 或 JDK 8
sudo yum install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel
readlink -f $(which java)
一般在:
/usr/lib/jvm/java-11-openjdk
进入:
Jenkins → Manage Jenkins → Global Tool Configuration → JDK
jdk11/usr/lib/jvm/java-11-openjdk
✅ 保存即可
Jenkins 本身运行依赖 JDK,如果你换了 JDK,需要确认启动用的 JDK。
ps -ef | grep jenkins
或:
java -version
编辑 Jenkins 配置文件:
sudo vi /etc/sysconfig/jenkins
找到:
JENKINS_JAVA_CMD=""
改为:
JENKINS_JAVA_CMD=/usr/lib/jvm/java-11-openjdk/bin/java
重启:
sudo systemctl restart jenkins
pipeline {
agent any
tools {
jdk 'jdk11'
}
stages {
stage('Build') {
steps {
sh 'java -version'
}
}
}
}
⚠️ 这里的 jdk11 必须和 Global Tool Configuration 里的 JDK Name 一致。
journalctl -u jenkins -xe
bin/javabin/javatools 是否配置| 场景 | 推荐 |
|---|---|
| 新装 Jenkins | OpenJDK 11 |
| 老项目 | JDK 8 |
| CI 构建 | Jenkins 全局工具 |
| 生产稳定 | 系统 JDK + 指定 JAVA_HOME |
如果你愿意,可以告诉我:
我可以直接给你 一套完整命令 + 示例 Jenkinsfile ✅