詹金斯内部的 Java 8

问题描述 投票:0回答:1

我默认使用 Jenkins 2.445 版本,它附带 java 版本 17,但我有一份需要 java 版本 8 的工作,任何人都可以帮助我如何做到这一点。我已经尝试过各种插件

管理 Jenkins -> 工具 -> jdk 安装,但在运行作业时我收到以下错误

Installing JDK jdk-8-oth-JPR
Downloading JDK from https://download.oracle.com/otn/java/jdk/8-b132/jdk-8-linux-x64.tar.gz
Downloading 5307 bytes
Installing /var/jenkins_home/tools/hudson.model.JDK/Java_8/jdk.sh
[Java_8] $ /var/jenkins_home/tools/hudson.model.JDK/Java_8/jdk.sh -noregister
/var/jenkins_home/tools/hudson.model.JDK/Java_8/jdk.sh: 1: cannot open html: No such file
/var/jenkins_home/tools/hudson.model.JDK/Java_8/jdk.sh: 2: cannot open head: No such file
/var/jenkins_home/tools/hudson.model.JDK/Java_8/jdk.sh: 3: cannot open title: No such file
/var/jenkins_home/tools/hudson.model.JDK/Java_8/jdk.sh: 4: cannot open META: No such file
/var/jenkins_home/tools/hudson.model.JDK/Java_8/jdk.sh: 5: cannot open link: No such file
/var/jenkins_home/tools/hudson.model.JDK/Java_8/jdk.sh: 6: cannot open link: No such file
/var/jenkins_home/tools/hudson.model.JDK/Java_8/jdk.sh: 7: 
: not found
/var/jenkins_home/tools/hudson.model.JDK/Java_8/jdk.sh: 8: cannot open body: No such file
/var/jenkins_home/tools/hudson.model.JDK/Java_8/jdk.sh: 9: cannot open div: No such file
/var/jenkins_home/tools/hudson.model.JDK/Java_8/jdk.sh: 10: cannot open table: No such file
/var/jenkins_home/tools/hudson.model.JDK/Java_8/jdk.sh: 11: cannot open tr: No such file
/var/jenkins_home/tools/hudson.model.JDK/Java_8/jdk.sh: 12: Syntax error: redirection unexpected

下面是我的管道

pipeline {
    agent any
    tools{
        jdk 'Java 8'
    }

    stages {
            stage('example'){
                steps{
                sh 'env | grep -e PATH -e JAVA_HOME'
                sh 'java --version'
                }
            }
       
        }
}
java jenkins java-8 jenkins-plugins cicd
1个回答
0
投票

我强烈建议使用容器将构建环境与 Jenkins 和/或代理设置分离。使用这种方法,您将能够简单地选择所需的映像及其版本来完全控制您的构建环境,而无需在每次需要更新时重新配置 Jenkins 实例和代理:

pipeline {
    agent {
        docker {
            registryUrl: 'docker registry of your choice goes here'
            image: 'jdk image of your choice goes here'
        }
    }

    stages {
        stage('example') {
            steps {
                sh 'env | grep -e PATH -e JAVA_HOME'
                sh 'java --version'
            }
        }   
    }
} 

阅读 Jenkins 文档,了解在管道中使用 Docker 的详细信息。

选择构建镜像时,请注意 https://github.com/docker-library/openjdk/issues/505。如果您在组织内运行此程序,您可能已经批准了内部注册表和映像。

© www.soinside.com 2019 - 2024. All rights reserved.