温馨提示×

centos jenkins如何配jdk

小樊
36
2026-08-30 19:41:22
栏目: 智能运维

CentOS 上给 Jenkins 配置 JDK,常用有 三种方式。下面按「最推荐 → 次推荐 → 特殊场景」来说明,基本照着做就能跑起来。


一、最推荐:在 Jenkins 全局工具中配置 JDK(自动安装)

适合 Jenkins 可联网 的情况。

1️⃣ 进入 Jenkins 全局工具配置

Jenkins → Manage Jenkins → Tools(全局工具配置)

2️⃣ 找到 JDK

  • 勾选 ✅ Install automatically
  • 点击 Add JDK

3️⃣ 配置 JDK

选项 说明
Name 例:jdk8 / jdk11
Vendor Adoptium / Oracle
Version 选择版本
勾选自动安装

✅ Jenkins 会在构建时自动下载并安装 JDK


二、常用方案:使用系统已安装的 JDK(推荐生产环境)

1️⃣ CentOS 安装 JDK(示例 JDK 8 / 11 / 17)

方式一:yum 安装(最简单)

# 查看可用版本
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

2️⃣ Jenkins 中配置 JDK

进入:

Jenkins → Manage Jenkins → Global Tool Configuration → JDK
  • Namejdk11
  • ❌ 不勾选 Install automatically
  • JAVA_HOME
/usr/lib/jvm/java-11-openjdk

✅ 保存即可


三、Jenkins 启动时使用哪个 JDK(重要)

Jenkins 本身运行依赖 JDK,如果你换了 JDK,需要确认启动用的 JDK。

查看当前 Jenkins 使用的 JDK

ps -ef | grep jenkins

或:

java -version

修改 Jenkins 启动 JDK(systemd)

编辑 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 中指定 JDK(推荐)

pipeline {
    agent any

    tools {
        jdk 'jdk11'
    }

    stages {
        stage('Build') {
            steps {
                sh 'java -version'
            }
        }
    }
}

⚠️ 这里的 jdk11 必须和 Global Tool Configuration 里的 JDK Name 一致。


五、常见问题排查

❌ Jenkins 启动失败

journalctl -u jenkins -xe

❌ JAVA_HOME 不生效

  • 确认的是 JDK 目录,不是 bin/java
  • 必须有 bin/java

❌ 构建时找不到 java

  • 确认 Jenkins 使用的 JDK
  • 确认 Pipeline 中 tools 是否配置

六、推荐组合(总结)

场景 推荐
新装 Jenkins OpenJDK 11
老项目 JDK 8
CI 构建 Jenkins 全局工具
生产稳定 系统 JDK + 指定 JAVA_HOME

如果你愿意,可以告诉我:

  • ✅ Jenkins 版本
  • ✅ CentOS 版本(7 / 8 / Stream)
  • ✅ 要跑 Java 8 / 11 / 17?

我可以直接给你 一套完整命令 + 示例 Jenkinsfile

0