Android Proguard与外部jar

时间:2011-07-29 08:52:25

标签: android jar proguard

我已将外部jar文件添加到mt项目的libs文件夹中,并在构建路径中对其进行配置。 当我尝试“导出Android包”时,我收到许多未找到的引用类的Proguard错误消息,例如: 警告:com.itextpdf.text.BaseColor:找不到引用的类java.awt.Color

当我尝试调试BaseColor类工作正常时,我无法弄清楚为什么它会警告我。

任何帮助将不胜感激,

由于

2 个答案:

答案 0 :(得分:42)

我试了几天让外部罐子正常工作。有人建议做下载引用的JARS或正确定义libjars。这些都不适合我 什么工作把这种事情放在了错误的JARS中:

-dontwarn javax.management.**
-dontwarn java.lang.management.**
-dontwarn org.apache.log4j.**
-dontwarn org.apache.commons.logging.**
-dontwarn org.slf4j.**
-dontwarn org.json.*

和此:

-keep class javax.** { *; }
-keep class org.** { *; }
-keep class twitter4j.** { *; }

(显然你需要调整它以匹配你的错误信息)

祝你好运。

答案 1 :(得分:0)

我想,

com.itextpdf.text.BaseColor包含在您添加的jar中。它扩展了java.awt.Color,它不包含在其中,而是扩展到您在Eclipse下使用的Java发行版。

导出文件时,导出过程会被java.awt.color doesn't exist in the Android base framework阻塞。我不认为这与Proguard有关:即使你禁用混淆,这也必须发生。