kotlinx.serialization icon indicating copy to clipboard operation
kotlinx.serialization copied to clipboard

ERROR: org.jetbrains.kotlinx.serialization.compiler.extensions.SerializationResolveExtension caused LinkageError

Open Omico opened this issue 1 year ago • 3 comments

Describe the bug

This works appropriately before Kotlin 2.0.

ERROR: org.jetbrains.kotlinx.serialization.compiler.extensions.SerializationResolveExtension caused LinkageError
java.lang.NoSuchFieldError: Class org.jetbrains.kotlin.name.ClassId does not have member field 'org.jetbrains.kotlin.name.ClassId$Companion Companion'
	at org.jetbrains.kotlinx.serialization.compiler.resolve.SerializationAnnotations.<clinit>(NamingConventions.kt:48)
	at org.jetbrains.kotlinx.serialization.compiler.resolve.KSerializationUtilKt.getHasSerializableAnnotation(KSerializationUtil.kt:185)
	at org.jetbrains.kotlinx.serialization.compiler.resolve.KSerializationUtilKt.getHasSerializableAnnotation(KSerializationUtil.kt:182)
	at org.jetbrains.kotlinx.serialization.compiler.resolve.KSerializationUtilKt.getHasSerializableOrMetaAnnotation(KSerializationUtil.kt:179)
	at org.jetbrains.kotlinx.serialization.compiler.resolve.KSerializationUtilKt.getShouldHaveGeneratedMethodsInCompanion(KSerializationUtil.kt:118)
	at org.jetbrains.kotlinx.serialization.compiler.extensions.SerializationResolveExtension.getSyntheticCompanionObjectNameIfNeeded(SerializationResolveExtension.kt:84)
	at org.jetbrains.kotlin.resolve.extensions.SyntheticResolveExtension$Companion$getInstance$1.getSyntheticCompanionObjectNameIfNeeded(SyntheticResolveExtension.kt:82)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassDescriptor.createSyntheticCompanionObjectDescriptor(LazyClassDescriptor.java:553)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassDescriptor.computeCompanionObjectDescriptor(LazyClassDescriptor.java:534)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassDescriptor.lambda$new$3(LazyClassDescriptor.java:218)
	at org.jetbrains.kotlin.storage.LockBasedStorageManager$LockBasedLazyValue.invoke(LockBasedStorageManager.java:408)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassDescriptor.getCompanionObjectDescriptor(LazyClassDescriptor.java:503)
	at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassDescriptor.resolveMemberHeaders(LazyClassDescriptor.java:743)
	at org.jetbrains.kotlin.resolve.LazyTopDownAnalyzer.resolveAllHeadersInClasses(LazyTopDownAnalyzer.kt:241)
	at org.jetbrains.kotlin.resolve.LazyTopDownAnalyzer.analyzeDeclarations(LazyTopDownAnalyzer.kt:214)
	at org.jetbrains.kotlin.resolve.LazyTopDownAnalyzer.analyzeDeclarations$default(LazyTopDownAnalyzer.kt:58)
	at org.jetbrains.kotlin.cli.jvm.compiler.TopDownAnalyzerFacadeForJVM.analyzeFilesWithJavaIntegration(TopDownAnalyzerFacadeForJVM.kt:119)
	at org.jetbrains.kotlin.cli.jvm.compiler.TopDownAnalyzerFacadeForJVM.analyzeFilesWithJavaIntegration$default(TopDownAnalyzerFacadeForJVM.kt:77)
	at org.jetbrains.kotlin.scripting.compiler.plugin.impl.ScriptJvmCompilerImplsKt$analyze$1.invoke(ScriptJvmCompilerImpls.kt:266)
	at org.jetbrains.kotlin.scripting.compiler.plugin.impl.ScriptJvmCompilerImplsKt$analyze$1.invoke(ScriptJvmCompilerImpls.kt:264)
	at org.jetbrains.kotlin.cli.common.messages.AnalyzerWithCompilerReport.analyzeAndReport(AnalyzerWithCompilerReport.kt:115)
	at org.jetbrains.kotlin.scripting.compiler.plugin.impl.ScriptJvmCompilerImplsKt.analyze(ScriptJvmCompilerImpls.kt:264)
	at org.jetbrains.kotlin.scripting.compiler.plugin.impl.ScriptJvmCompilerImplsKt.doCompile(ScriptJvmCompilerImpls.kt:226)
	at org.jetbrains.kotlin.scripting.compiler.plugin.impl.ScriptJvmCompilerImplsKt.compileImpl(ScriptJvmCompilerImpls.kt:186)
	at org.jetbrains.kotlin.scripting.compiler.plugin.impl.ScriptJvmCompilerImplsKt.access$compileImpl(ScriptJvmCompilerImpls.kt:1)
	at org.jetbrains.kotlin.scripting.compiler.plugin.impl.ScriptJvmCompilerFromEnvironment$compile$1$1.invoke(ScriptJvmCompilerImpls.kt:95)
	at org.jetbrains.kotlin.scripting.compiler.plugin.impl.ScriptJvmCompilerFromEnvironment$compile$1$1.invoke(ScriptJvmCompilerImpls.kt:83)
	at org.jetbrains.kotlin.scripting.compiler.plugin.impl.ScriptJvmCompilerImplsKt.withScriptCompilationCache(ScriptJvmCompilerImpls.kt:116)
	at org.jetbrains.kotlin.scripting.compiler.plugin.impl.ScriptJvmCompilerImplsKt.access$withScriptCompilationCache(ScriptJvmCompilerImpls.kt:1)
	at org.jetbrains.kotlin.scripting.compiler.plugin.impl.ScriptJvmCompilerFromEnvironment.compile(ScriptJvmCompilerImpls.kt:83)
	at org.jetbrains.kotlin.scripting.compiler.plugin.AbstractScriptEvaluationExtension$doEval$1.invokeSuspend(AbstractScriptEvaluationExtension.kt:136)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlin.coroutines.ContinuationKt.startCoroutine(Continuation.kt:115)
	at kotlin.script.experimental.impl.RunSuspendKt.internalScriptingRunSuspend(runSuspend.kt:19)
	at org.jetbrains.kotlin.scripting.compiler.plugin.AbstractScriptEvaluationExtension.doEval(AbstractScriptEvaluationExtension.kt:135)
	at org.jetbrains.kotlin.scripting.compiler.plugin.AbstractScriptEvaluationExtension.eval(AbstractScriptEvaluationExtension.kt:122)
	at org.jetbrains.kotlin.cli.jvm.K2JVMCompiler.doExecute(K2JVMCompiler.kt:111)
	at org.jetbrains.kotlin.cli.jvm.K2JVMCompiler.doExecute(K2JVMCompiler.kt:50)
	at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:104)
	at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:48)
	at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:101)
	at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:79)
	at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:43)
	at org.jetbrains.kotlin.cli.common.CLITool$Companion.doMainNoExit(CLITool.kt:180)
	at org.jetbrains.kotlin.cli.common.CLITool$Companion.doMainNoExit$default(CLITool.kt:175)
	at org.jetbrains.kotlin.cli.common.CLITool$Companion.doMain(CLITool.kt:167)
	at org.jetbrains.kotlin.cli.jvm.K2JVMCompiler$Companion.main(K2JVMCompiler.kt:250)
	at org.jetbrains.kotlin.cli.jvm.K2JVMCompiler.main(K2JVMCompiler.kt)
error: org.jetbrains.kotlinx.serialization.compiler.extensions.SerializationResolveExtension caused LinkageError (profiles.main.kts): java.lang.AssertionError: org.jetbrains.kotlinx.serialization.compiler.extensions.SerializationResolveExtension caused LinkageError

To Reproduce https://github.com/Omico/OhMyPowerShellProfile/blob/main/profiles.example.main.kts Run generateProfiles configuration in IDEA.

Expected behavior

Environment

  • Kotlin version: 2.0.0

Omico avatar Jul 07 '24 22:07 Omico

This exception indicates mismatch between Kotlin compiler version and kotlinx-serialization compiler plugin version. Please check that your kotlin-serialization-compiler-plugin JAR is also of 2.0 version

sandwwraith avatar Jul 08 '24 12:07 sandwwraith

Also, please file plugin- and general Kotlin-related tickets to YouTrack

sandwwraith avatar Jul 08 '24 12:07 sandwwraith

Sorry for the delay, move to https://youtrack.jetbrains.com/issue/KT-69820.

Omico avatar Jul 10 '24 22:07 Omico

Closing in favor of https://youtrack.jetbrains.com/issue/KT-69820

sandwwraith avatar Nov 27 '24 18:11 sandwwraith