1

Jenkins 1.501 にスクリプター プラグインをインストールしました。

https://wiki.jenkins-ci.org/display/JENKINS/Scriptler+Plugin

このスクリプトを作成しました:

import org.apache.commons.httpclient.*
import org.apache.commons.httpclient.auth.*
import org.apache.commons.httpclient.methods.*

@Grab(group='commons-httpclient', module='commons-httpclient', version='3.1')
void createNewJenkinsProject() {

  out.println("Test")


}
createNewJenkinsProject()

この例に基づいて:

https://wiki.jenkins-ci.org/display/JENKINS/Authenticating+scripted+clients

私のスレーブの 1 つでのジョブで、上記のスクリプトをビルド ステップとして追加します。ジョブをビルドすると、次のようになります。

Execution of script [move-projects.groovy] failed - java.lang.NoClassDefFoundError: org/apache/ivy/core/report/ResolveReportorg.jenkinsci.plugins.scriptler.util.GroovyScript$ScriptlerExecutionException: java.lang.NoClassDefFoundError: org/apache/ivy/core/report/ResolveReport
    at org.jenkinsci.plugins.scriptler.util.GroovyScript.call(GroovyScript.java:66)
    at hudson.remoting.UserRequest.perform(UserRequest.java:118)
    at hudson.remoting.UserRequest.perform(UserRequest.java:48)
    at hudson.remoting.Request$2.run(Request.java:326)
    at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
    at java.util.concurrent.FutureTask.run(FutureTask.java:166)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
    at java.lang.Thread.run(Thread.java:722)
Caused by: java.lang.NoClassDefFoundError: org/apache/ivy/core/report/ResolveReport
4

1 に答える 1

5

ビルドアクションとして「システムGroovyスクリプトの実行」を選択した場合、これはJenkinsマスターで実行されます。したがって、必要なすべてのjarがクラスパスに存在することを確認してください。スクリプトを使用する前でも確認できます。これを行うには、your-jenkins-url / jenkins / scriptに移動し、スクリプトを貼り付けてテストします

「Groovyスクリプトの実行」オプションが選択されている場合は、jarがスレーブのクラスパスにあることを確認してください。

于 2013-02-15T13:50:57.160 に答える