Files
kotlin-fork/plugins/kotlinx-serialization
Leonid Startsev e0dce31cde Support situation when argument for serializer<T>() function has SerialInfo annotations.
Because SerializationJvmIrIntrinsicSupport does not instantiate annotations yet,
this info could be lost. As a workaround, it is possible to call Companion.serializer()
functions instead of direct serializer instantiation, as they are plugin-generated
and correctly handle annotations.

Note that for some cases (enums & interfaces) this WA is not enough, so additional work
is needed later.

Fixes https://github.com/Kotlin/kotlinx.serialization/issues/2179
2023-02-07 16:41:01 +00:00
..

Kotlin serialization IDEA plugin

Kotlin serialization plugin consists of three parts: a compiler plugin, an IntelliJ plugin and a runtime library. This is the folder with common source for all plugins, IDEA plugin is built from here. Gradle and Maven plugins can be found in libraries folder.

Building and usage

Prerequisites:

Before all, follow the instructions from root README.md to download dependencies and build Kotlin compiler. (./gradlew dist)

Plugin works only with IntelliJIDEA 2017.2 and higher.

Make sure you have latest dev version of Kotlin plugin installed.

With gradle:

Run ./gradlew :kotlinx-serialization-compiler-plugin:dist. In IDEA, open Settings - Plugins - Install plugin from disk... and choose $kotlin_root/dist/artifacts/Serialization/lib/kotlinx-serialization-compiler-plugin.jar

From within IDE (for development):

Run ./gradlew runIde You'll get a fresh copy of IDEA with Kotlin and Kotlin-serialization plugins built from sources.

Building gradle plugin

Run ./gradlew :kotlinx-gradle-serialization-plugin:install

Building maven plugin

Make all prerequisites from libraries' README.md for Maven projects. Go to $kotlin_root/libraries/tools/kotlin-maven-serialization. Run mvn install