To use this you need to import import kotlinx.serialization.decodeFromString
. But because this is an experimental API, you also need to mark your class or method with @ExperimentalSerializationApi
. But to enable experimental switches you also need to add an compiler by languageSettings.optIn("kotlin.RequiresOptIn")
.
build.gradle.kts
plugins {
kotlin("jvm") version "1.5.31"
kotlin("plugin.serialization") version "1.5.31"
}
kotlin.sourceSets.all {
languageSettings.optIn("kotlin.RequiresOptIn")
}
test.kts
import kotlinx.serialization.ExperimentalSerializationApi
import kotlinx.serialization.SerialFormat
import kotlinx.serialization.json.Json
import kotlinx.serialization.decodeFromString
@Serializable
data class Box(val s: String = "")
@OptIn(ExperimentalSerializationApi::class)
fun readJson(){
val deserialized = Json.decodeFromString<Box>("""{"s" : "Hallo"}""")
}