Kotlin 1.9中Enum的entries无法解析,需调整Gradle配置吗?
解决Kotlin 1.9.0中Enum.entries未解析的问题
- 需要在Gradle配置里显式指定Kotlin语言版本与API版本,虽然1.9.0插件默认适配1.9版本,但显式配置能规避潜在的兼容性问题。修改你的
build.gradle.kts如下:
plugins { kotlin("jvm") version "1.9.0" } kotlin { jvmToolchain(11) // 根据项目实际使用的JDK版本调整,比如1.8、17等 sourceSets.all { languageSettings { languageVersion = "1.9" apiVersion = "1.9" } } }
若配置后仍报错,大概率是IDE缓存导致的假提示,可执行以下操作:
- 运行Gradle的
clean和build任务 - 在IDE中清理缓存并重启(比如IntelliJ操作路径:
File -> Invalidate Caches... -> Invalidate and Restart)
- 运行Gradle的
同时检查枚举类的调用写法是否正确,需直接通过枚举类名调用
entries,示例:
enum class Status { ACTIVE, INACTIVE, PENDING } fun main() { val allStatus = Status.entries // 正确调用方式 allStatus.forEach { println(it.name) } }
内容的提问来源于stack exchange,提问作者BVtp
相关产品推荐
相关产品推荐

