Vik*_*ing 17 intellij-idea kotlin
我正在尝试@Serializable在 Kotlin 中使用注释。我可以使用 Gradle 构建项目,但它在 IntelliJ 中显示为红色,当我将鼠标悬停在@Serializable注释上时,会显示一条消息:
kotlinx.serializable compiler plugin is not applied to the module, so this
annotation would not be processed. Make sure you've setup your buildscript
correctly and re-import project.
Run Code Online (Sandbox Code Playgroud)
我的build.gradle.kts文件看起来像这样:
plugins {
id("org.jetbrains.kotlin.jvm").version("1.3.50")
id("org.jetbrains.kotlin.plugin.serialization") version "1.3.50"
idea
}
repositories {
jcenter()
}
dependencies {
implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8")
implementation(group = "com.charleskorn.kaml", name = "kaml", version = "0.12.0")
testImplementation("org.jetbrains.kotlin:kotlin-test")
testImplementation("org.jetbrains.kotlin:kotlin-test-junit")
}
Run Code Online (Sandbox Code Playgroud)
我安装了最新版本的 Kotlin 插件 (1.3.50)。
Nic*_*zzi 17
就我而言,我需要在项目级gradle添加 jvm 插件
plugins {
id 'org.jetbrains.kotlin.jvm' version '1.7.20' apply false
}
Run Code Online (Sandbox Code Playgroud)
然后在应用程序 gradle中我添加了
plugins {
id 'org.jetbrains.kotlin.plugin.serialization' version '1.7.20'
}
Run Code Online (Sandbox Code Playgroud)
通过此配置,我可以看到:
Record.serializer()
Run Code Online (Sandbox Code Playgroud)
小智 6
您需要添加:
plugins {
application
kotlin("jvm") version "1.4.21"
kotlin("plugin.serialization") version "1.4.21"
}
Run Code Online (Sandbox Code Playgroud)
这是由 JetBrains 在这里指定的,链接到 gradle:
https://github.com/Kotlin/kotlinx.serialization#setup
https://ktor.io/docs/kotlin-serialization.html#add_dependencies
所以我让这个工作了。问题是我正在使用该idea插件生成 IntelliJ 项目。当我通过打开文件导入项目时build.gradle.kts,一切都按预期进行。
我一开始没有以这种方式导入它的原因是因为我禁用了 Gradle 支持,所以当我打开文件时build.gradle.kts,它没有导入项目,只是在编辑器中打开它。如果遇到这种情况,请点击cmd+ shift+a并搜索Gradle,然后将该开关切换到On。重新启动 IntelliJ 后,您应该能够从build.gradle.kts文件导入项目,然后就可以开始了。
| 归档时间: |
|
| 查看次数: |
4943 次 |
| 最近记录: |