android - 使用 Proguard 时使用 jackson-json 库的问题

标签 android obfuscation jackson proguard

我在一个 Android 项目中使用 jackson-json 库,在使用 Proguard 进行混淆时导出应用程序时出现以下错误:

Proguard returned with error code 1. See console
Warning: com.fasterxml.jackson.databind.ext.DOMSerializer: can't find referenced class org.w3c.dom.bootstrap.DOMImplementationRegistry
Warning: com.fasterxml.jackson.databind.ext.DOMSerializer: can't find referenced class org.w3c.dom.bootstrap.DOMImplementationRegistry
Warning: com.fasterxml.jackson.databind.ext.DOMSerializer: can't find referenced class org.w3c.dom.bootstrap.DOMImplementationRegistry
Warning: com.fasterxml.jackson.databind.ext.DOMSerializer: can't find referenced class org.w3c.dom.bootstrap.DOMImplementationRegistry
Warning: com.fasterxml.jackson.databind.ext.DOMSerializer: can't find referenced class org.w3c.dom.bootstrap.DOMImplementationRegistry
You should check if you need to specify additional program jars.
Warning: there were 5 unresolved references to classes or interfaces.
You may need to specify additional library jars (using '-libraryjars').
java.io.IOException: Please correct the above warnings first.
at proguard.Initializer.execute(Initializer.java:321)
at proguard.ProGuard.initialize(ProGuard.java:211)
at proguard.ProGuard.execute(ProGuard.java:86)
at proguard.ProGuard.main(ProGuard.java:492)

我尝试过使用项目的设置,添加“-libraryjars”以包含其他 jar 以及许多其他内容,但没有任何帮助。

最佳答案

好的,我已经添加了从多个网站收集的以下内容:

-libraryjars libs/jackson-annotations-2.0.0.jar
-libraryjars libs/jackson-core-2.0.0.jar

-dontskipnonpubliclibraryclassmembers

-keepattributes *Annotation*,EnclosingMethod

-keepnames class org.codehaus.jackson.** { *; }

-dontwarn javax.xml.**
-dontwarn javax.xml.stream.events.**
-dontwarn com.fasterxml.jackson.databind.**

连同用于 json 的每个类的下一个代码(使用 get&set),我认为正在创建 apk,但我不确定我所写的内容是否足以使其正常工作,而且如果不需要我写的一些东西:

-keep public class MyClass.** {
  public void set*(***);
  public *** get*();
}

关于android - 使用 Proguard 时使用 jackson-json 库的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11029836/

相关文章:

javascript - 如何击败混淆的 javascript 代码的反混淆?

java - 使用 Jersey 和 Jackson 进行 JSON 格式化

java - JSON 到 hashmap ( jackson )

c# - Android 和 REST Web 服务响应帮助

php - 添加帖子时 Android Http Post 不起作用

android - CSS 媒体查询和 My Nexus One(或其他 Android 手机)

java - 与反编译器相比,Java 代码混淆真的有效吗?

Java Class.forName 和混淆名称,java 找不到类

Java Camel 框架 : Losing message body in processor

android - 使用 Google Places Autocomplete API 时空间不起作用