Szukaj…


Uwagi

doLast

Należy zauważyć, że w stopniu 3.x bardziej idiomatycznym definiowanie zadania: zamiast tego preferowane jest użycie wyraźnej notacji doLast {zamknięcie} operator „leftShift” (<<). ( LeftShift został wycofany w stopniu 3.2, planuje się jego usunięcie w stopniu 5.0 .)

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

jest równa:

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

Dodawanie zależności za pomocą nazw zadań

Możemy zmienić kolejność wykonywania zadań za pomocą metody dependsOn .

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

Dodanie `zależy od: powoduje:

  • zadanie B zależy od zadania A
  • Stopniowanie, aby wykonać zadanie A za każdym razem przed wykonaniem zadania B

Wyjście to:

> gradle -q B
Hello from A
Hello from B

Dodawanie zależności z innego projektu

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

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

Aby odnieść się do zadania w innym projekcie, należy poprzedzić nazwę zadania ścieżką projektu, do którego on należy :projectB:B

Wyjście to:

> gradle -q B
Hello from A
Hello from B

Dodawanie zależności za pomocą obiektu zadania

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

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

B.dependsOn A

Jest to alternatywny sposób definiowania zależności zamiast używania nazwy zadania .

A wynik jest taki sam:

> gradle -q B
Hello from A
Hello from B

Dodanie wielu zależności

Możesz dodać wiele zależności.

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

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

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

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

Teraz możesz zdefiniować zestaw zależności:

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

Dane wyjściowe to:

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

Inny przykład:

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

Dane wyjściowe to:

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

Wiele zależności za pomocą metody dependsOn

Możesz dodać wiele zależności.

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'
}

Dane wyjściowe to:

> 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
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow