diff --git a/libraries/tools/kotlin-maven-serialization/pom.xml b/libraries/tools/kotlin-maven-serialization/pom.xml index 67c00b1be8c..8eac4f66797 100755 --- a/libraries/tools/kotlin-maven-serialization/pom.xml +++ b/libraries/tools/kotlin-maven-serialization/pom.xml @@ -18,7 +18,7 @@ ../../pom.xml - kotlinx-maven-serialization-plugin + kotlin-maven-serialization jar Serialization plugin for Maven diff --git a/plugins/kotlin-serialization/kotlin-serialization-ide/build.gradle.kts b/plugins/kotlin-serialization/kotlin-serialization-ide/build.gradle.kts index 19fbd07aac6..af7142a3fcb 100644 --- a/plugins/kotlin-serialization/kotlin-serialization-ide/build.gradle.kts +++ b/plugins/kotlin-serialization/kotlin-serialization-ide/build.gradle.kts @@ -13,6 +13,7 @@ dependencies { compile(project(":idea")) compile(project(":idea:idea-gradle")) compile(project(":idea:idea-maven")) + compile(project(":plugins:annotation-based-compiler-plugins-ide-support")) compileOnly(intellijDep()) excludeInAndroidStudio(rootProject) { compileOnly(intellijPluginDep("maven")) } compileOnly(intellijPluginDep("gradle")) diff --git a/plugins/kotlin-serialization/kotlin-serialization-ide/src/org/jetbrains/kotlinx/serialization/idea/KotlinSerializationMavenImportHandler.kt b/plugins/kotlin-serialization/kotlin-serialization-ide/src/org/jetbrains/kotlinx/serialization/idea/KotlinSerializationMavenImportHandler.kt index 00e2183abe1..22397229b1e 100644 --- a/plugins/kotlin-serialization/kotlin-serialization-ide/src/org/jetbrains/kotlinx/serialization/idea/KotlinSerializationMavenImportHandler.kt +++ b/plugins/kotlin-serialization/kotlin-serialization-ide/src/org/jetbrains/kotlinx/serialization/idea/KotlinSerializationMavenImportHandler.kt @@ -5,14 +5,20 @@ package org.jetbrains.kotlinx.serialization.idea -import org.jetbrains.idea.maven.project.MavenProject -import org.jetbrains.kotlin.idea.facet.KotlinFacet -import org.jetbrains.kotlin.idea.maven.MavenProjectImportHandler +import org.jetbrains.kotlin.annotation.plugin.ide.AbstractMavenImportHandler +import org.jetbrains.kotlin.annotation.plugin.ide.AnnotationBasedCompilerPluginSetup +import java.io.File -class KotlinSerializationMavenImportHandler: MavenProjectImportHandler { - override fun invoke(facet: KotlinFacet, mavenProject: MavenProject) { - KotlinSerializationImportHandler.modifyCompilerArguments(facet, PLUGIN_MAVEN_JAR) - } +class KotlinSerializationMavenImportHandler : AbstractMavenImportHandler() { + override val compilerPluginId: String = "org.jetbrains.kotlinx.serialization" + override val pluginName: String = "serialization" + override val mavenPluginArtifactName: String = "kotlin-maven-serialization" + override val pluginJarFileFromIdea: File + get() = File(KotlinSerializationImportHandler.PLUGIN_JPS_JAR) - private val PLUGIN_MAVEN_JAR = "kotlinx-maven-serialization-plugin" + override fun getOptions( + enabledCompilerPlugins: List, + compilerPluginOptions: List + ): List? = + if ("kotlinx-serialization" in enabledCompilerPlugins) emptyList() else null } \ No newline at end of file