我嘗試研究 Gradle 并遵循一些教程,但我對以下內容感到困惑:
我創建了幾個簡單的任務:
task startProcess{
println 'startProcess'
}
task doStep2{
println 'Step2'
}
task doStep3{
println 'Step3'
}
task finishProcess{
println 'finishProcesss'
}
并嘗試執行其中之一:
gradle finishProcess
或defaultTasks使用命令gradle build:
defaultTasks `finishProcess`
task startProcess{
println 'startProcess'
}
task doStep2{
println 'Step2'
}
task doStep3{
println 'Step3'
}
task finishProcess{
println 'finishProcesss'
}
在這兩個選項中,我得到了相同的結果:
> Configure project :
startProcess
Step2
Step3
finishProcesss
BUILD SUCCESSFUL in 1s
如何執行其中之一?
uj5u.com熱心網友回復:
你必須使用register,我想如果你沒有使用它,你只是要求 Gradle 執行這些任務。
例如
tasks.register('startProcess') {
doLast {
println 'startProcess'
}
}
tasks.register('doStep2') {
doLast {
println 'Step2'
}
}
tasks.register('doStep3') {
doLast {
println 'Step3'
}
}
tasks.register('finishProcess') {
doLast {
println 'finishProcesss'
}
}
tasks.named("build") { finalizedBy("finishProcess") }
注冊這些任務后,您將能夠單獨呼叫每個任務。
如果你想鏈接一個特定的任務,build例如一個任務。
然后你可以finalizedBy像下面這樣使用。
tasks.named("build") { finalizedBy("finishProcess") }
這將呼叫finishProcess任務,無論何時build觸發。
我強烈推薦官方gradle 檔案以獲取有關任務的更多資訊。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/445974.html
標籤:毕业典礼
上一篇:為什么API29中引入的代碼在運行API26的模擬器上作業?
下一篇:將lottie匯入gradle
