如何在ProGuard中排除Android Library项目?

时间:2014-07-28 10:30:47

标签: android eclipse adt proguard eclipse-adt

我有一个引用外部库项目的Android应用程序项目。应用程序中的Proguard始终失败,并显示以下错误消息:

Proguard returned with error code 1. See console 

Error: Can't read [*](Can't process class [com/*/*/a.class] (Expected Utf8Constant at index
[6] in class [com/*/*/a]))

我尝试了几种方法(例如-keep,-dontwarn,-injar等..)来排除包含a.class的外部库项目中的jar,但无法继续。

排除可能在lib中有一个或多个JAR的外部库项目的正确方法是什么?

1 个答案:

答案 0 :(得分:0)

类文件似乎已损坏; ProGuard真的无法使用它。也许它已经用其他工具处理过?你可以看看javap是否接受它:

javap -classpath libs/library.jar com.x.y.a

如果文件实际上不是类文件,唯一的解决方案可能是将其从库中删除。