diff options
Diffstat (limited to 'src/main/groovy/FlycheckAndroidJavaTask.groovy')
| -rw-r--r-- | src/main/groovy/FlycheckAndroidJavaTask.groovy | 27 |
1 files changed, 22 insertions, 5 deletions
diff --git a/src/main/groovy/FlycheckAndroidJavaTask.groovy b/src/main/groovy/FlycheckAndroidJavaTask.groovy index 4eadb85..d7ce2da 100644 --- a/src/main/groovy/FlycheckAndroidJavaTask.groovy +++ b/src/main/groovy/FlycheckAndroidJavaTask.groovy @@ -11,14 +11,31 @@ class FlycheckAndroidJavaTask extends DefaultTask { @TaskAction def action() { - def buildTypes = project.extensions.buildTypes.names - if (buildTypes.isEmpty()) buildTypes = ['debug', 'release'] - def flavors = project.extensions.flavors.names + def variants = [] + def android = project.extensions.findByName('android') + if (android && android.class.simpleName == 'AppExtension_Decorated') { + variants = android.applicationVariants.collect { it.name } + } else if (android && android.class.simpleName == 'LibraryExtension_Decorated') { + variants = android.libraryVariants.collect { it.name } + } else { + def buildTypes = project.extensions.buildTypes.names + if (buildTypes.isEmpty()) buildTypes = ['debug', 'release'] + def flavors = project.extensions.flavors.names + if (flavors.isEmpty()) { + variants = buildTypes + } else { + flavors.each { flavor -> + buildTypes.each { buildType -> + variants.add(flavor + buildType.capitalize()) + } + } + } + } + variants = variants.sort() def configurations = ['', 'UnitTest'] configurations.each { configuration -> def name = 'compile' - if (!flavors.isEmpty()) name += flavors.first().capitalize() - if (!buildTypes.isEmpty()) name += buildTypes.first().capitalize() + name += variants.first().capitalize() name += configuration.capitalize() + 'JavaWithJavac' def compile = project.tasks.findByName(name) if (compile) { |
