Update Kotlin and KotlinX.Serialization version
indrih17 opened this issue · 5 comments
indrih17 commented
Version 0.4.0 of this library crashed with Kotlin version 1.3.70 because Kotlin/kotlinx.serialization#736
Please, update Kotlin version to 1.3.70 and KotlinX.Serialization version to 0.20.0.
nuhkoca commented
@indrih17 Serialization plugin had been updated. It shouldn't cause any crash. This converter works properly for me.
indrih17 commented
@nuhkoca if you have kotlin version 1.3.70 and kotlinx.serialization version 0.20.0, then the converter fails on version 0.4.0.
GSala commented
I got this crash. Might be related, but I don't know if it's on this library or on kotlinx.serialization.
Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Method.invoke(Native Method)
at kotlinx.serialization.SerializationKt.invokeSerializerGetter(Serialization.kt:37)
at kotlinx.serialization.SerializationKt.compiledSerializer(Serialization.kt:11)
at kotlinx.serialization.PlatformUtilsKt.serializer(PlatformUtils.kt:11)
at kotlinx.serialization.JvmResolvingKt.serializerByTypeToken(JvmResolving.kt:61)
at kotlinx.serialization.JvmResolvingKt.serializerByTypeToken(JvmResolving.kt:84)
at com.jakewharton.retrofit2.converter.kotlinx.serialization.Factory.responseBodyConverter(Factory.kt:23)
at retrofit2.Retrofit.nextResponseBodyConverter(Retrofit.java:352)
at retrofit2.Retrofit.responseBodyConverter(Retrofit.java:335)
at retrofit2.HttpServiceMethod.createResponseConverter(HttpServiceMethod.java:113)
at retrofit2.HttpServiceMethod.parseAnnotations(HttpServiceMethod.java:82)
at retrofit2.ServiceMethod.parseAnnotations(ServiceMethod.java:37)
2020-03-05 22:28:51.176 6842-6842/com.dev.appE/AndroidRuntime: at retrofit2.Retrofit.loadServiceMethod(Retrofit.java:192)
at retrofit2.Retrofit$1.invoke(Retrofit.java:149)
at java.lang.reflect.Proxy.invoke(Proxy.java:1006)
... 16 more
Caused by: java.lang.NoSuchMethodError: No direct method <init>(Ljava/lang/String;Lkotlinx/serialization/internal/GeneratedSerializer;I)V in class Lkotlinx/serialization/internal/SerialClassDescImpl; or its super classes (declaration of 'kotlinx.serialization.internal.SerialClassDescImpl' appears in /data/app/com.dev.app-x1pCW_pzXi5TImI6mGNzlA==/base.apk)
at ***.Build$$serializer.<clinit>(Build.kt:12)
at ***.Build$Companion.serializer(Unknown Source:0)
... 31 more
JakeWharton commented
Released 0.5.0 with the fix from @ychescale9.