2012-02-21 10 views
3

私はjenkins ubuntuスレーブを設定しましたが、gradleプラグインを使用してgradleビルドを実行します。jenkinsスレーブでgradleを実行できません

$ 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のコマンドを実行している、それが正常に実行されます。問題は、実行中のジェンキンスは、ジョブを構築するときに私が得ることです。

+0

もう一度試してください: 'GRAILS_HOME'変数をスレーブに設定しましたか? –

+1

あなたはGRADLE_HOMEを意味すると思います。その場合、私はスレーブとゲンキーノードの両方の設定でそれを設定しました。 –

答えて

4

解決策の解決策が見つかりました。 私はgradleラッパーを使って、gradleビルドを実行しています。 は、私は2つのことでした:

  1. はgradlew(およびその他のファイル)を作成するには、このpage上の指示に従い、Gradleのラッパーを使用するようにビルドステップをマークジェンキンスのGradleプラグインで、私のリポジトリに
  2. それらをチェックします。

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

この上の行は.gradleフォルダ&ダウンロードを作成します(タスクに記載された)gradleバージョンのGradleのビルドが実行されるたびに必要な、それがチェックインする.gradle 必要がないことを意味もうフォルダをあなたのレポジトリに保存してください。

また、jenkins gradle pluginがLinuxでもgradle.batを実行しようとしているため、gradlewの名前をgradle.batに変更する必要がありました。 それだけです。ワーキング。

+1

これはJenkins gradleプラグインの問題です。 1つは、gradlewファイルを上流のレポにチェックインする必要はありません... –

関連する問題