gpt4 book ai didi

android - 找不到类的 ScalaSig - json4s with scala + proguard for an android app

转载 作者:行者123 更新时间:2023-11-30 02:28:14 28 4
gpt4 key购买 nike

我有一个非常简单的案例类 (Baz),我想使用 json4s-native 将其序列化为 JSON。当使用 Proguard 制作 android apk 时,我似乎根本无法让它工作。

序列化时,出现以下异常:

java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:555)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:739)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:555)
            at dalvik.system.NativeStart.main(Native Method)
Caused by: org.json4s.package$MappingException: Can't find ScalaSig for class foo.bar.Baz
at org.json4s.reflect.ScalaSigReader$.findClass(ScalaSigReader.scala:42)
at org.json4s.reflect.ScalaSigReader$.org$json4s$reflect$ScalaSigReader$$read$1(ScalaSigReader.scala:36)
at org.json4s.reflect.ScalaSigReader$.readField(ScalaSigReader.scala:38)

我的混淆器配置包含:

-keepclassmembers class * { ** MODULE$; }
-dontoptimize
-dontobfuscate
-keepattributes Exceptions,InnerClasses,Signature,Deprecated,SourceFile,LineNumberTable,*Annotation*,EnclosingMethod

针对实际代码运行测试用例时一切正常,但在混淆步骤之后,总是会出现此问题。

有什么帮助吗?

干杯。

最佳答案

也许这有帮助:

json4s“仅支持顶级对象或直接在对象中定义的对象”。例如,在 def 中定义的类不起作用。我假设 Proguard 改变了代码结构。

(对不起,我不能发表评论)

关于android - 找不到类的 ScalaSig - json4s with scala + proguard for an android app,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27638220/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com