无法在詹金斯奴隶上运行gradle

时间:2012-02-21 16:34:11

标签: hudson jenkins gradle

我已经配置了一个jenkins ubuntu slave,我想在它上面运行我的gradle构建(使用gradle插件)。问题是,当运行jenkins构建作业时,我得到:

 $ gradle --no-daemon --info clean build
 FATAL: command execution failed
 java.io.IOException: Cannot run program "gradle" (in directory "/var/jenkins/workspace/dadi"): java.io.IOException: error=2, No such file or directory
    at java.lang.ProcessBuilder.start(ProcessBuilder.java:460)
    at hudson.Proc$LocalProc.<init>(Proc.java:244)
    at hudson.Proc$LocalProc.<init>(Proc.java:216)

在从属(同一用户)的命令行上运行相同的gradle命令时,它成功运行。

1 个答案:

答案 0 :(得分:4)

找到解决方法! 我开始使用gradle包装器来运行gradle构建。 我做了两件事:

  1. 按照此page的说明创建gradlew(和其他文件)并在我的存储库中检查它们
  2. 在jenkins gradle插件中标记了使用gradle包装器的构建步骤。

    task wrapper(type: Wrapper) { gradleVersion = '2.0' }

  3. 以上这一行会创建.gradle文件夹&amp;每次运行gradle构建时,下载所需的gradle版本(在任务中提及),这意味着无需签入.gradle文件夹进入您的存储库。

    还必须将gradlew重命名为gradle.bat,因为jenkins gradle插件尝试在linux上运行gradle.bat。 而已。工作