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)