合并Gradle的不同buildType任务名称

问题描述 投票:0回答:1

https://stackoverflow.com/a/48494454/3286489之后,我现在可以在编译我的应用程序之前运行linting任务(在CLI中运行并在Android Studio中运行)。

我的代码如下。

android {
//....
    lintOptions {
        abortOnError true
    }
}

tasks.whenTaskAdded { task ->
    if (task.name == 'compileDebugSources' || task.name == 'compileReleaseSources') {
        task.dependsOn lint
        task.mustRunAfter lint
    }
}

但是我不喜欢

task.name == 'compileDebugSources' || task.name == 'compileReleaseSources'

有没有办法将它们结合起来仍然可以使它工作?

android gradle build.gradle gradlew
1个回答
0
投票

你可以使用正则表达式:

tasks.whenTaskAdded { task ->
    if (task.name.matches('compile(.*)Sources')) {
        task.dependsOn lint
        task.mustRunAfter lint
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.