From 2cad64881dac4221043ffd3bd764ed3d9b67afb1 Mon Sep 17 00:00:00 2001 From: Sergey Igushkin Date: Tue, 6 Jun 2017 16:13:52 +0300 Subject: [PATCH] (minor) Improve exception message in case no Android plugin was found --- .../org/jetbrains/kotlin/gradle/plugin/KotlinPlugin.kt | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPlugin.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPlugin.kt index c1f774ef2d5..5054e115b71 100755 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPlugin.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinPlugin.kt @@ -424,11 +424,14 @@ abstract class AbstractAndroidProjectHandler(private val kotlinConfigurationT project.afterEvaluate { project -> if (project != null) { - val plugin = sequenceOf("android", "android-library", "com.android.test", "com.android.feature") + val androidPluginIds = listOf("android", "com.android.application", "android-library", "com.android.library", + "com.android.test", "com.android.feature") + val plugin = androidPluginIds.asSequence() .mapNotNull { project.plugins.findPlugin(it) as? BasePlugin } .firstOrNull() - ?: throw InvalidPluginException("The Kotlin Android plugin cannot be used without " + - "the Android Gradle plugin applied to the project.") + ?: throw InvalidPluginException("'kotlin-android' expects one of the Android Gradle " + + "plugins to be applied to the project:\n\t" + + androidPluginIds.joinToString("\n\t") { "* $it" }) val subpluginEnvironment = loadSubplugins(project)