Kotlin SerializationComponentRegister与此版本的编译器不兼容
我在AS中发现了这个错误-尽管我检查了tripple以选择一个有效的版本配对(kotlin 1.2.40和Serialization 0.5.0):Kotlin SerializationComponentRegister与此版本的编译器不兼容,kotlin,kotlinx.serialization,Kotlin,Kotlinx.serialization,我在AS中发现了这个错误-尽管我检查了tripple以选择一个有效的版本配对(kotlin 1.2.40和Serialization 0.5.0): 错误:Kotlin:[内部错误]java.lang.IllegalStateException:提供的插件org.jetbrains.kotlinx.serialization.compiler.extensions.SerializationComponentRegister与此版本的编译器不兼容 位于org.jetbrains.kotlin.c
错误:Kotlin:[内部错误]java.lang.IllegalStateException:提供的插件org.jetbrains.kotlinx.serialization.compiler.extensions.SerializationComponentRegister与此版本的编译器不兼容
位于org.jetbrains.kotlin.cli.jvm.compiler.kotlincorenvironment.(kotlincorenvironment.kt:186)
位于org.jetbrains.kotlin.cli.jvm.compiler.kotlincorenvironment.(kotlincorenvironment.kt:119)
位于org.jetbrains.kotlin.cli.jvm.compiler.kotlincorenvironment$Companion.createForProduction(kotlincorenvironment.kt:418)
位于org.jetbrains.kotlin.cli.jvm.K2JVMCompiler.createCoreEnvironment(K2JVMCompiler.kt:265)
位于org.jetbrains.kotlin.cli.jvm.K2JVMCompiler.doExecute(K2JVMCompiler.kt:154)
位于org.jetbrains.kotlin.cli.jvm.K2JVMCompiler.doExecute(K2JVMCompiler.kt:63)
位于org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.java:107)
位于org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.java:51)
位于org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:96)
位于org.jetbrains.kotlin.daemon.CompileServiceImpl$compile$$inlined$ifAlive$lambda$1.invoke(CompileServiceImpl.kt:399)
位于org.jetbrains.kotlin.daemon.CompileServiceImpl$compile$$inlined$ifAlive$lambda$1.invoke(CompileServiceImpl.kt:98)
位于org.jetbrains.kotlin.daemon.CompileServiceImpl$docomfile$$inlined$ifAlive$lambda$2.invoke(CompileServiceImpl.kt:920)
位于org.jetbrains.kotlin.daemon.CompileServiceImpl$docomfile$$inlined$ifAlive$lambda$2.invoke(CompileServiceImpl.kt:98)
位于org.jetbrains.kotlin.daemon.common.DummyProfiler.withMeasure(furratils.kt:137)
位于org.jetbrains.kotlin.daemon.CompileServiceImpl.checkedCompile(CompileServiceImpl.kt:950)
位于org.jetbrains.kotlin.daemon.CompileServiceImpl.docomfile(CompileServiceImpl.kt:919)
位于org.jetbrains.kotlin.daemon.CompileServiceImpl.compile(CompileServiceImpl.kt:397)
在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处
位于sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)中
位于java.lang.reflect.Method.invoke(Method.java:498)
在sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:361)
在sun.rmi.transport.transport$1.run(transport.java:200)
在sun.rmi.transport.transport$1.run(transport.java:197)
位于java.security.AccessController.doPrivileged(本机方法)
位于sun.rmi.transport.transport.serviceCall(transport.java:196)
位于sun.rmi.transport.tcp.tcpttransport.handleMessages(tcpttransport.java:568)
位于sun.rmi.transport.tcp.tcpttransport$ConnectionHandler.run0(tcpttransport.java:826)
位于sun.rmi.transport.tcp.tcpttransport$ConnectionHandler.lambda$run$0(tcpttransport.java:683)
位于java.security.AccessController.doPrivileged(本机方法)
位于sun.rmi.transport.tcp.tcpttransport$ConnectionHandler.run(tcpttransport.java:682)
位于java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
位于java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
运行(Thread.java:748)
原因:java.lang.AbstractMethodError:org.jetbrains.kotlinx.serialization.compiler.extensions.SerializationComponentRegistrator.registerProjectComponents(Lcom/intellij/mock/MockProject;Lorg/jetbrains/kotlin/config/CompilerConfiguration;)V
位于org.jetbrains.kotlin.cli.jvm.compiler.kotlincorenvironment.(kotlincorenvironment.kt:184)
... 33多
有一个IntelliJ/Android Studio插件,专门为Kotlin序列化支持而设计,与主要Kotlin插件分离。自述文件部分:
因为序列化仍然是高度实验性的,所以它是作为“大”Kotlin IDEA插件的一个单独工件发布的。您可以从TeamCity构建页面下载额外的IDEA插件,用于处理使用序列化的项目
它提供了指向该插件最新TeamCity版本的链接,包括Kotlin 1.2.40
由于他们目前仅通过TeamCity发布此插件,因此您必须通过转到首选项插件从磁盘安装插件…
对于任何使用IntelliJ而不是Android Studio的人,如果插件不能解决问题,同样的自述文件会告诉:
尝试使用gradle运行构建:设置
-构建、执行、部署
-构建工具
-gradle
-运行程序
-勾选将IDE构建/运行操作委托给gradle
;或者从控制台启动构建
Github上有一条关于此错误消息的消息,可能也值得关注。在idea中检查已安装的Kotlin插件(工具>Kotlin>配置Kotlin插件更新)。必须与build.gradle文件中的相同。
我很确定这就是引发异常的插件。至少对我来说是这样。
Error:Kotlin: [Internal Error] java.lang.IllegalStateException: The provided plugin org.jetbrains.kotlinx.serialization.compiler.extensions.SerializationComponentRegistrar is not compatible with this version of compiler
at org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment.<init>(KotlinCoreEnvironment.kt:186)
at org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment.<init>(KotlinCoreEnvironment.kt:119)
at org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment$Companion.createForProduction(KotlinCoreEnvironment.kt:418)
at org.jetbrains.kotlin.cli.jvm.K2JVMCompiler.createCoreEnvironment(K2JVMCompiler.kt:265)
at org.jetbrains.kotlin.cli.jvm.K2JVMCompiler.doExecute(K2JVMCompiler.kt:154)
at org.jetbrains.kotlin.cli.jvm.K2JVMCompiler.doExecute(K2JVMCompiler.kt:63)
at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.java:107)
at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.java:51)
at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:96)
at org.jetbrains.kotlin.daemon.CompileServiceImpl$compile$$inlined$ifAlive$lambda$1.invoke(CompileServiceImpl.kt:399)
at org.jetbrains.kotlin.daemon.CompileServiceImpl$compile$$inlined$ifAlive$lambda$1.invoke(CompileServiceImpl.kt:98)
at org.jetbrains.kotlin.daemon.CompileServiceImpl$doCompile$$inlined$ifAlive$lambda$2.invoke(CompileServiceImpl.kt:920)
at org.jetbrains.kotlin.daemon.CompileServiceImpl$doCompile$$inlined$ifAlive$lambda$2.invoke(CompileServiceImpl.kt:98)
at org.jetbrains.kotlin.daemon.common.DummyProfiler.withMeasure(PerfUtils.kt:137)
at org.jetbrains.kotlin.daemon.CompileServiceImpl.checkedCompile(CompileServiceImpl.kt:950)
at org.jetbrains.kotlin.daemon.CompileServiceImpl.doCompile(CompileServiceImpl.kt:919)
at org.jetbrains.kotlin.daemon.CompileServiceImpl.compile(CompileServiceImpl.kt:397)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:361)
at sun.rmi.transport.Transport$1.run(Transport.java:200)
at sun.rmi.transport.Transport$1.run(Transport.java:197)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.transport.Transport.serviceCall(Transport.java:196)
at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:568)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:826)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:683)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:682)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.AbstractMethodError: org.jetbrains.kotlinx.serialization.compiler.extensions.SerializationComponentRegistrar.registerProjectComponents(Lcom/intellij/mock/MockProject;Lorg/jetbrains/kotlin/config/CompilerConfiguration;)V
at org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment.<init>(KotlinCoreEnvironment.kt:184)
... 33 more