2015-11-29 23 views
3

我正在使用android實驗性插件0.4(gradle 2.8),並且想要修改與buildType關聯的所有任務;在我的情況下調試。查找與buildType相關的所有任務?

目前,我使用下面的 「黑客」:

tasks.all { 
    if(it.name.contains("Debug")) { 
    print it.name 
    } 
} 

有沒有更類型安全的方法嗎?

+0

爲什麼這是一個黑客?您可能需要將其封裝在一個'afterEvaluate'閉包中,以確保在完成所有任務配置後運行'hack',但這取決於您在創建任務時所做的工作。 – JBirdVegas

+1

ndk的任務名稱很安靜。我正在尋找更穩定的東西,因爲我想禁用調試構建類型的條形調試符號任務。 – JE42

+0

我很想聽聽你如何禁用調試符號剝離... –

回答

1

我不知道很多有關此特定插件,但更好的方法與搖籃API做到這一點可能是:

tasks.withType(AndroidTask).all { 
    print it.name 
} 

凡AndroidTask是參考。你將不得不看看插件的來源,找出確切的類。他們還提供tasks.matching {}。請查看TaskCollection GroovyDocs以瞭解具體用法。

+0

這將允許篩選特定的任務。但是,我需要找到哪些任務與某個buildType相關聯。 (請參閱https://docs.gradle.org/current/userguide/nativeBinaries.html) – JE42