簡體   English   中英

在自定義任務中執行android構建任務

[英]Execute android build tasks in custom tasks

我想刪除項目makefile並編寫一些不錯的gradle任務。 我需要按以下順序執行以下任務:

  1. 清潔
  2. 增量版本
  3. 建立
  4. 上載

#1,#3和#4是來自android和插件(bintray)的任務,而#2是自定義任務。 這是我到目前為止的內容:

task releaseMajor {
    doLast {
        clean.execute()
        build.execute()
        incrementVersion.execute()
        bintrayUpload.execute()
    }
}

運行順序不是很大,我認為clean是在build后運行的。 並且binrayUpload運行時沒有任何味道( release )。 我也嘗試過使用dependsOn而沒有成功(順序不起作用)。

我在Gradle文檔中找不到如何正確執行此操作。 如果以正確的順序從CLI執行,則一切正常。

使用mustRunAfterfinalizedBy進行更好的順序控制:

task releaseMajor (dependsOn: ['clean', 'build', 'incrementVersion', 'bintrayUpload'])
build.mustRunAfter clean
incrementVersion.mustRunAfter build
bintrayUpload.mustRunAfter incrementVersion

試過這個

task clean {
    println 'clean task executing'
}
task incrementVersion (dependsOn:"clean"){
    println 'incrementVersion task executing'
}
task building (dependsOn:"incrementVersion"){
    println 'build task executing'
}
task bintrayUpload (dependsOn:"building") {
    println 'bintrayUpload task executing'
}

輸出是

clean task executing
incrementVersion task executing
build task executing
bintrayUpload task executing

並執行./gradlew bintryUpload

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM