【问题标题】:Is there an valid proguard rule for RxJava and FasterXML?RxJava 和 FasterXML 是否有有效的 proguard 规则?
【发布时间】:2016-01-29 14:28:40
【问题描述】:

现在阻止我在生产中使用 kotlin 的唯一问题是我找不到正确的 proguard 文件。

我用了什么:

1.Kotlin

2.Anko

3.Jackson-Kotlin 模块

这是警告信息:

:app:proguardRelease
Warning: com.fasterxml.jackson.databind.ext.DOMSerializer: can't find referenced class org.w3c.dom.bootstrap.DOMImplementationRegistry
Warning: rx.internal.util.unsafe.BaseLinkedQueueConsumerNodeRef: can't find referenced class sun.misc.Unsafe
Warning: rx.internal.util.unsafe.BaseLinkedQueueProducerNodeRef: can't find referenced class sun.misc.Unsafe
Warning: rx.internal.util.unsafe.ConcurrentCircularArrayQueue: can't find referenced class sun.misc.Unsafe
Warning: rx.internal.util.unsafe.ConcurrentSequencedCircularArrayQueue: can't find referenced class sun.misc.Unsafe
Warning: rx.internal.util.unsafe.MpmcArrayQueueConsumerField: can't find referenced class sun.misc.Unsafe
Warning: rx.internal.util.unsafe.MpmcArrayQueueProducerField: can't find referenced class sun.misc.Unsafe
Warning: rx.internal.util.unsafe.MpscLinkedQueue: can't find referenced class sun.misc.Unsafe
Warning: rx.internal.util.unsafe.SpmcArrayQueueConsumerField: can't find referenced class sun.misc.Unsafe
Warning: rx.internal.util.unsafe.SpmcArrayQueueProducerField: can't find referenced class sun.misc.Unsafe
Warning: rx.internal.util.unsafe.SpscArrayQueue: can't find referenced class sun.misc.Unsafe
Warning: rx.internal.util.unsafe.UnsafeAccess: can't find referenced class sun.misc.Unsafe
Warning: there were 41 unresolved references to classes or interfaces.

【问题讨论】:

  • 请描述您的问题。您尝试了哪些规则,哪些规则不起作用,哪些错误?
  • 没有一个错误与 Kotlin 直接相关。如果你用 Java 替换 Kotlin 代码,它可以工作吗?
  • @AndreyBreslav 整个项目都是用 Kotlin 写的,我不能用 Java 代替。
  • 这与 Kotlin 无关,只需在您的 proguard 中添加以下行。 -- -dontwarn sun.misc.Unsafe -dontwarn org.w3c.dom.bootstrap.DOMImplementationRegistry

标签: android proguard rx-java kotlin fasterxml


【解决方案1】:

这与 Kotlin 无关。忽略 proguard 文件中的警告:

-dontwarn sun.misc.Unsafe
-dontwarn org.w3c.dom.bootstrap.DOMImplementationRegistry

【讨论】:

  • 谢谢你提到,它与 Kotlin 有 nth 关系。
【解决方案2】:

更好的办法是把这个 aar 作为依赖:

https://github.com/artem-zinnatullin/RxJavaProGuardRules

【讨论】:

  • 对于那些有同样问题的人,我最终根据这个答案解决了,附加选项处理 kotlin 反射
  • @Marvin:你能发布你的 proguard 文件吗?
猜你喜欢
  • 1970-01-01
  • 2020-11-16
  • 1970-01-01
  • 2016-04-21
  • 2017-05-23
  • 1970-01-01
  • 1970-01-01
  • 2012-02-04
  • 2019-11-25
相关资源
最近更新 更多