Suche…


Bemerkungen

doLast

Beachten Sie , dass in einem gradle 3.x mehr idiomatischen Weg Aufgabendefinition: explizite doLast mit {} Schließung Notation statt „Leftshift“ (<<) Operator bevorzugt (Leftshift in einer gradle 3.2 veraltet ist geplant in gradle 5.0 entfernt werden. .)

task oldStyle << {
    println 'Deprecated style task'
 }

ist äquivalent zu:

task newStyle {
    doLast {
    println 'Deprecated style task'
    }
 }

Hinzufügen von Abhängigkeiten mithilfe von Tasknamen

Wir können die Ausführungsreihenfolge von Tasks mit der dependsOn .

task A << {
    println 'Hello from A'
}
task B(dependsOn: A) << {
    println "Hello from B"
}

Hinzufügen von 'hängt von: Ursachen ab:

  • Aufgabe B hängt von Aufgabe A ab
  • Absolvieren Sie eine A Task immer vor der B Task-Ausführung.

Und die Ausgabe ist:

> gradle -q B
Hello from A
Hello from B

Abhängigkeiten aus einem anderen Projekt hinzufügen

project('projectA') {
    task A(dependsOn: ':projectB:B') << {
        println 'Hello from A'
    }
}

project('projectB') {
    task B << {
        println 'Hello from B'
    }
}

Um auf eine Aufgabe in einem anderen Projekt zu verweisen, geben Sie dem Pfad des Projekts, zu dem er gehört, den Namen der Aufgabe an :projectB:B

Und die Ausgabe ist:

> gradle -q B
Hello from A
Hello from B

Abhängigkeit mithilfe eines Aufgabenobjekts hinzufügen

task A << {
    println 'Hello from A'
}

task B << {
    println 'Hello from B'
}

B.dependsOn A

Es ist eine alternative Methode, um die Abhängigkeit zu definieren, anstatt den Aufgabennamen zu verwenden .

Und die Ausgabe ist die gleiche:

> gradle -q B
Hello from A
Hello from B

Mehrere Abhängigkeiten hinzufügen

Sie können mehrere Abhängigkeiten hinzufügen.

task A << {
    println 'Hello from A'
}

task B << {
    println 'Hello from B'
}

task C << {
    println 'Hello from C'
}

task D << {
    println 'Hello from D'
}

Jetzt können Sie eine Reihe von Abhängigkeiten definieren:

B.dependsOn A
C.dependsOn B
D.dependsOn C

Die Ausgabe ist:

> gradle -q D
Hello from A
Hello from B
Hello from C
Hello from D

Anderes Beispiel:

B.dependsOn A 
D.dependsOn B
D.dependsOn C

Die Ausgabe ist:

> gradle -q D
Hello from A
Hello from B
Hello from C
Hello from D

Mehrere Abhängigkeiten mit der abhängigen Methode

Sie können mehrere Abhängigkeiten hinzufügen.

task A << {
    println 'Hello from A'
}

task B(dependsOn: A) << {
    println 'Hello from B'
}

task C << {
    println 'Hello from C'
}

task D(dependsOn: ['B', 'C'] << {
    println 'Hello from D'
}

Die Ausgabe ist:

> gradle -q D
Hello from A
Hello from B
Hello from C
Hello from D


Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow