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 8bfa3fbf6b6..dd9322b85d8 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 @@ -9,7 +9,6 @@ import com.android.build.gradle.* import com.android.build.gradle.api.AndroidSourceSet import com.android.build.gradle.api.BaseVariant import com.android.build.gradle.api.SourceKind -import com.android.builder.model.SourceProvider import org.gradle.api.* import org.gradle.api.artifacts.ExternalDependency import org.gradle.api.artifacts.maven.Conf2ScopeMappingContainer @@ -43,6 +42,7 @@ import org.jetbrains.kotlin.gradle.targets.js.dsl.KotlinJsBinaryMode import org.jetbrains.kotlin.gradle.targets.js.ir.JsIrBinary import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrCompilation import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrLink +import org.jetbrains.kotlin.gradle.targets.js.jsPluginDeprecationMessage import org.jetbrains.kotlin.gradle.targets.jvm.KotlinJvmTarget import org.jetbrains.kotlin.gradle.tasks.* import org.jetbrains.kotlin.gradle.tasks.KotlinCompile @@ -680,13 +680,7 @@ internal open class Kotlin2JsPlugin( ) override fun apply(project: Project) { - project.logger.warn( - """ - The `kotlin2js` Gradle plugin has been deprecated. - Please use `org.jetbrains.kotlin.js` plugin instead. - For usage details, see https://kotlinlang.org/docs/reference/js-project-setup.html - """.trimIndent() - ) + project.logger.warn(jsPluginDeprecationMessage("kotlin2js")) val target = KotlinWithJavaTarget(project, KotlinPlatformType.js, targetName, { KotlinJsOptionsImpl() }) (project.kotlinExtension as Kotlin2JsProjectExtension).target = target diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsPlugin.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsPlugin.kt index ab0e7d0dd03..ea3344ca0a8 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsPlugin.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/targets/js/KotlinJsPlugin.kt @@ -18,13 +18,16 @@ import org.jetbrains.kotlin.gradle.plugin.mpp.KotlinJsSingleTargetPreset import org.jetbrains.kotlin.gradle.plugin.whenEvaluated import org.jetbrains.kotlin.gradle.targets.js.ir.KotlinJsIrSingleTargetPreset import org.jetbrains.kotlin.gradle.utils.* -import org.jetbrains.kotlin.gradle.utils.checkGradleCompatibility open class KotlinJsPlugin( private val kotlinPluginVersion: String ) : Plugin { override fun apply(project: Project) { + project.pluginManager.withPlugin("org.jetbrains.kotlin.frontend") { + project.logger.warn(jsPluginDeprecationMessage("org.jetbrains.kotlin.frontend")) + } + // TODO get rid of this plugin, too? Use the 'base' plugin instead? // in fact, the attributes schema of the Java base plugin may be required to consume non-MPP Kotlin/JS libs, // so investigation is needed @@ -85,4 +88,11 @@ open class KotlinJsPlugin( kotlinExtension.sourceSets.maybeCreate(MAIN_COMPILATION_NAME) kotlinExtension.sourceSets.maybeCreate(TEST_COMPILATION_NAME) } -} \ No newline at end of file +} + +internal fun jsPluginDeprecationMessage(id: String): String = + """ + The `$id` Gradle plugin has been deprecated. + Please use `org.jetbrains.kotlin.js` plugin instead `kotlin2js` and `org.jetbrains.kotlin.frontend` + For usage details, see https://kotlinlang.org/docs/reference/js-project-setup.html + """.trimIndent() \ No newline at end of file