Compile failing with using serialization plugin for kotlin
someshkoli opened this issue · 2 comments
someshkoli commented
Getting the following error when trying to compile code which contains Serializable annotation, attaching sample code, error and runtime info below. Any ideas what could be causing this ?
Sample Code to compile
package example.tasks
import kotlinx.serialization.Serializable
import headout.oss.ergo.annotations.Task
object ExampleTask {
fun noArgWithSerializableResult(): Result = Result(10)
}
@Serializable
data class Result(val number: Int)KotlinCompilation().apply {
sources = listOf(SourceFile.kotlin(EXAMPLE_KOTLIN_FILE, source))
annotationProcessors = listOf(TaskProcessor())
inheritClassPath = true
compilerPluginRegistrars = listOf(SerializationComponentRegistrar())
messageOutputStream = System.out
}.compile()e: java.lang.NoSuchMethodError: 'com.intellij.psi.PsiElement org.jetbrains.kotlin.resolve.lazy.data.KtClassLikeInfo.getScopeAnchor()'
at org.jetbrains.kotlinx.serialization.compiler.resolve.KSerializerDescriptorResolver.addSerializerImplClass(KSerializerDescriptorResolver.kt:72)
at org.jetbrains.kotlinx.serialization.compiler.extensions.SerializationResolveExtension.generateSyntheticClasses(SerializationResolveExtension.kt:79)
at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassMemberScope.getNonDeclaredClasses(LazyClassMemberScope.kt:287)
at org.jetbrains.kotlin.resolve.lazy.descriptors.AbstractLazyMemberScope.doGetClasses(AbstractLazyMemberScope.kt:70)
at org.jetbrains.kotlin.resolve.lazy.descriptors.AbstractLazyMemberScope.access$doGetClasses(AbstractLazyMemberScope.kt:38)
at org.jetbrains.kotlin.resolve.lazy.descriptors.AbstractLazyMemberScope$classDescriptors$1.invoke(AbstractLazyMemberScope.kt:49)
at org.jetbrains.kotlin.resolve.lazy.descriptors.AbstractLazyMemberScope$classDescriptors$1.invoke(AbstractLazyMemberScope.kt:49)
at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunction.invoke(LockBasedStorageManager.java:578)
at org.jetbrains.kotlin.storage.LockBasedStorageManager$MapBasedMemoizedFunctionToNotNull.invoke(LockBasedStorageManager.java:681)
at org.jetbrains.kotlin.resolve.lazy.descriptors.AbstractLazyMemberScope.getContributedClassifier(AbstractLazyMemberScope.kt:77)
at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassMemberScope.addSyntheticNestedClasses(LazyClassMemberScope.kt:391)
at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassMemberScope.computeExtraDescriptors(LazyClassMemberScope.kt:129)
at org.jetbrains.kotlin.resolve.lazy.descriptors.LazyClassMemberScope.doDescriptors(LazyClassMemberScope.kt:72)- kotlin version: 1.9.24
- kotlin-compile-testing version: 1.6.0
someshkoli commented
Ignore, was banging my head around it for two days, only to find solution right after raising issue.
Ps: missing kotlinx-serialization-compiler-plugin-embeddable dependency