2013-03-26 61 views
0

我不知道,如果它是可能的,但我希望能夠做這樣的事情:有沒有一種合適的方式來模擬「執行後」,但不是「依賴」一個Gradle任務?

task myTask(executeAfter: myOtherTask) << { 
    //do something 
} 

其中myTask將等待myOtherTask執行前完成,但如果myOtherTask不明確在構建腳本調用期間命名,它不會作爲myTask的依賴項執行(就像dependsOn會導致發生一樣)。

我的想法是使用ExpandoMetaClass添加這個,但我不確定它是否真的可以在Gradle的生命週期中以這種方式實現。

Task.metaClass.executeAfter = { dependencyTask -> 
    if(<some condition>) { 
     this.dependsOn(dependencyTask) 
    } 
} 

回答

0

看起來像這樣是in the works但尚未公佈。拉請求是here

+1

該拉取請求已被合併。它將成爲Gradle 1.6的一部分。 – 2013-03-26 20:31:55

+1

如果現在真的需要它,而且你不介意在出血的邊緣,它應該在最近的[nightly build]中提供(http://www.gradle.org/nightly) – erdi 2013-03-26 23:28:45

相關問題