如何通过 jvm 插件使用 Kotlinx 序列化

How to use Kotlinx serialization with jvm plugin

我无法将 Kotlinx 序列化与 Kotlin JVM 插件一起使用

the instructions for Groovy DSL中:

plugins {
    id 'org.jetbrains.kotlin.multiplatform' version '1.5.0'
    id 'org.jetbrains.kotlin.plugin.serialization' version '1.5.0'
}

因为我已经在使用 org.jetbrains.kotlin.jvm,所以我想将它与 JVM 插件一起使用,但说明没有明确说明如何使用。

build.gradle 中,我尝试使用:

plugins {
    id 'org.jetbrains.kotlin.jvm' version '1.5.0'
    id 'org.jetbrains.kotlin.plugin.serialization' version '1.5.0'
    ...
}

在代码中:

import kotlinx.serialization.*

而且,我遇到编译错误 (Unresolved reference: serialization)。如何将 kotlinx 序列化与 JVM 插件一起使用?另外,我在 Groovy DSL 语法中需要它。 The instructions 已经针对 Kotlin DSL 展示了它,但我没有使用它。有人可以帮忙吗?

该插件不足以使用 Kotlinx 序列化,您还需要运行时库才能使用 kotlinx.serialization.* 包中的 类。 这在文档中有介绍: https://github.com/Kotlin/kotlinx.serialization#dependency-on-the-json-library

在Gradle中,这意味着您需要在dependencies块中添加Kotlinx序列化作为依赖:

repositories {
    mavenCentral()
}

dependencies {
    implementation "org.jetbrains.kotlinx:kotlinx-serialization-json:1.2.1"
}

如果您需要 JSON 以外的其他格式,则需要添加相应的工件。