合并不同的构建类型任务名称 Gradle



按照 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'

有没有办法将它们结合起来并仍然让它工作?

您可以使用正则表达式:

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

最新更新