From 478208b0704b4614c0fd7ef8152967517659dbb4 Mon Sep 17 00:00:00 2001 From: Vyacheslav Gerasimov Date: Thu, 11 Apr 2019 15:56:45 +0300 Subject: [PATCH] Build: remove ideaPlugin helper Plugin distribution building logic is now handled solely by idea-plugin project --- buildSrc/src/main/kotlin/artifacts.kt | 21 --------------------- prepare/idea-plugin/build.gradle.kts | 13 +++++++++++-- 2 files changed, 11 insertions(+), 23 deletions(-) diff --git a/buildSrc/src/main/kotlin/artifacts.kt b/buildSrc/src/main/kotlin/artifacts.kt index 387e9fc958f..f9b5422919e 100644 --- a/buildSrc/src/main/kotlin/artifacts.kt +++ b/buildSrc/src/main/kotlin/artifacts.kt @@ -140,27 +140,6 @@ fun Project.publish(body: Upload.() -> Unit = {}): Upload { } } -fun Project.ideaPlugin(subdir: String = "lib", body: AbstractCopyTask.() -> Unit): Copy { - val thisProject = this - val pluginTask = task("ideaPlugin") { - body() - into(File(rootProject.extra["ideaPluginDir"].toString(), subdir).path) - rename("-${java.util.regex.Pattern.quote(thisProject.version.toString())}", "") - } - - task("idea-plugin") { - dependsOn(pluginTask) - } - - return pluginTask -} - -fun Project.ideaPlugin(subdir: String = "lib"): Copy = ideaPlugin(subdir) { - runtimeJarTaskIfExists()?.let { - from(it) - } -} - fun Project.dist( targetDir: File? = null, targetName: String? = null, diff --git a/prepare/idea-plugin/build.gradle.kts b/prepare/idea-plugin/build.gradle.kts index 39c38f260e9..19b34a2c9a8 100644 --- a/prepare/idea-plugin/build.gradle.kts +++ b/prepare/idea-plugin/build.gradle.kts @@ -1,3 +1,5 @@ +import java.util.regex.Pattern.quote + description = "Kotlin IDEA plugin" plugins { @@ -140,12 +142,19 @@ val jar = runtimeJar { archiveName = "kotlin-plugin.jar" } -ideaPlugin { - duplicatesStrategy = DuplicatesStrategy.FAIL // Investigation is required if we have multiple jars with same name +val ideaPluginDir: File by rootProject.extra +tasks.register("ideaPlugin") { dependsOn(":dist") + + into(File(ideaPluginDir, "lib")) + + duplicatesStrategy = DuplicatesStrategy.FAIL // Investigation is required if we have multiple jars with same name + from(jar) from(libraries) from(jpsPlugin) { into("jps") } + + rename(quote("-$version"), "") }