Слияние разных задач buildType с именем Gradle - PullRequest
0 голосов
/ 02 сентября 2018

После 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'

Есть ли способ объединить их и заставить работать?

1 Ответ

0 голосов
/ 03 сентября 2018

Вы можете использовать регулярное выражение:

tasks.whenTaskAdded { task ->
    if (task.name.matches('compile(.*)Sources')) {
        task.dependsOn lint
        task.mustRunAfter lint
    }
}
...