Gradle任務(wù)依賴

2020-07-24 15:43 更新

就像你所猜想的那樣, 你可以聲明任務(wù)之間的依賴關(guān)系.

例子 6.6. 申明任務(wù)之間的依賴關(guān)系

build.gradle

task hello << {
    println 'Hello world!'
}

task intro(dependsOn: hello) << {
    println "I'm Gradle"
}

gradle -q intro 命令的輸出

> gradle -q intro
Hello world!
I'm Gradle

intro 依賴于 hello, 所以執(zhí)行 intro 的時(shí)候 hello 命令會被優(yōu)先執(zhí)行來作為啟動 intro 任務(wù)的條件.

在加入一個(gè)依賴之前, 這個(gè)依賴的任務(wù)不需要提前定義, 來看下面的例子.

例子 6.7. Lazy dependsOn - 其他的任務(wù)還沒有存在

build.gradle

task taskX(dependsOn: 'taskY') << {
    println 'taskX'
}
task taskY << {
    println 'taskY'
}

gradle -q taskX 命令的輸出

> gradle -q taskX
taskY
taskX

taskX 到 taskY 的依賴在 taskY 被定義之前就已經(jīng)聲明了. 這一點(diǎn)對于我們之后講到的多任務(wù)構(gòu)建是非常重要的. 任務(wù)依賴將會在 14.4 具體討論.

請注意你不能使用快捷注釋 (參考 6.8, “快捷注釋”) 當(dāng)所關(guān)聯(lián)的任務(wù)還沒有被定義.


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號