我正在與運行 gradle 的第三方合作,作為更大流程的一部分,這讓我在如何與 gradle 互動方面的選擇有限。
我想跳過一些任務,但我無法將額外的引數傳遞給 gradle。例如--exclude-task annoyingTask
我可以傳遞 JVM 引數,設定環境變數并init.gradle在主目錄中使用 。
我可以使用其中任何一個來強制構建跳過任務嗎?
uj5u.com熱心網友回復:
由于根據您的限制判斷您無權訪問 Gradle 構建腳本本身,因此初始化腳本 是您唯一的選擇。
如果您知道任務的名稱,則可以執行以下操作(偽):
init.gradle
gradle.taskGraph.whenReady {
def annoyingTask = allTasks.filter { name == "someAnnoyingTask" }
annoyingTask.configure {
onlyIf {
System.getenv("skip") == true
}
}
}
參考:
https://docs.gradle.org/current/userguide/init_scripts.html
https://docs.gradle.org/current/javadoc/org/gradle/api/execution/TaskExecutionGraph.html
https://docs.gradle.org/current/userguide/more_about_tasks.html#sec:using_a_predicate
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/372143.html
標籤:等级
