从jenkins文件调用gradle用于jenkins管道作业

时间:2018-01-19 12:33:04

标签: jenkins gradle jenkins-pipeline

我已将gradle插件添加到我的jenkins中,并且还配置了"全局工具配置"自动安装。当我做一个简单的"哪个gradle"从我的jenkinsfile,它无法识别,我得到一个错误" @ tmp / durable-30a9c792 / script.sh:gradle:not found"。

2 个答案:

答案 0 :(得分:2)

我目前遇到同样的问题,并且能够使用Declarative Pipeline脚本实现此功能。这是我的Jenkinsfile的样子:

pipeline {
    agent any
    tools {
        gradle "GRADLE_LATEST"
    }
    stages {
        stage('Gradle') {
            steps {
                sh 'gradle --version'
            }
        }
    }
}

我在此thread

中找到了此方法

无论您使用Declarative vs Scripted解释here

,管道脚本的语法都不同

请注意文档:

  

定义自动安装和放置PATH的工具的部分。这是   如果没有指定agent,则忽略。

Helpful gradle configuration options第3步可能会解决一些安装问题。

答案 1 :(得分:1)

我不知道为什么你无法看到gradle可执行文件,即使你选中了“自动安装”(我不熟悉这种机制)。但是,我建议您使用“Gradle Wrapper”进行CI构建(至少),这样您就不需要手动安装Gradle,甚至让Jenkins管理它。如果您使用Gradle Wrapper,构建本身将管理Gradle的安装(假设它可以通过您的代理工作)。