2016-07-04 5 views
1

Ich verwende ein Grrovy-Skript ähnlich wie der unten stehenden Link "https://github.com/jenkinsci/email-ext-plugin/blob/master/src/main/resources/hudson/plugins/emailext/templates/groovy-html.template". Ich benutze es Teil meiner Jenkins E-Mail-Ext-Plugin war es für viele Aufträge succusful, aber plötzlich, wenn ich meine Jobs in den Ordner mit Ordner-Plugin verschoben, dann begann es mit diesem Fehler: Ausnahme beim Template-Rendering ausgelöst: Kann nicht aufgerufen werden Methode "getBuildByNumber() für Null-Objekt java.lang.NullPointerException:".groovy Skript Vorlage schlägt fehl, nachdem die jenkins Job-Ordner mit Ordner-Plugin

Bitte einig mir helfen

Antwort

1

Sie jenkins.model.Jenkins.getItemByFullName(fullName) verwenden sollten, wo fullName eine Zeichenfolge wie foldername/jobname ist - ein hierarchischer Name eines Auftrags, die alle Ordner Eltern mit einem Schrägstrich / (wie ein Dateisystem-Pfad) getrennt ist. getItemByFullName funktioniert sowohl für Aufträge innerhalb als auch außerhalb von Ordnern.

sagen, dass ich die folgende Struktur haben:

Jenkins 
|-Job_A 
|-Folder 
    |-Job_B 
    |-Nested_Folder 
     |-Job_C 

Codebeispiel:

def job 
def j = jenkins.model.Jenkins 

//To get `Job_A`: 
job = j.getItemByFullName('Job_A') 

//To get `Job_B`: 
job = j.getItemByFullName('Folder/Job_B') 

//To get `Job_C`: 
job = j.getItemByFullName('Folder/Nested_Folder/Job_C') 

Mehr Informationen zu Wiki Jenkins: Hierarchical projects support

+0

hatte ein ähnliches Problem und das es behoben. Ich denke, das sollte als die richtige Antwort markiert werden. –