我正在尝试在使用
Android库项目的
Android应用程序中使用proguard,并且我收到以下错误:
java.io.IOException: Can't write [/private/var/folders/Pg/PgUpPJQ-E5qxL7jX6kpdCE+++TI/-Tmp-/android_3140050575281008652.jar] (Can't read [proguard.ClassPathEntry@1f8d244] (Duplicate zip entry [be.class == android_144638064543155619.jar:com/comp/dp/library/R$anim.class])) at proguard.OutputWriter.writeOutput(OutputWriter.java:224) at proguard.OutputWriter.execute(OutputWriter.java:120) at proguard.ProGuard.writeOutput(ProGuard.java:391) at proguard.ProGuard.execute(ProGuard.java:152) at proguard.ProGuard.main(ProGuard.java:499)
我的proguard.cfg文件是this以及一些-libraryjars引用rt.jar和其他几个依赖库.
我的猜测是,这个问题与使用Library Project有关,而proguard正试图从库项目中处理两次入口.但我不知道我应该使用哪些选项来解决这个问题.
任何建议/方向非常感谢.
更新1:通过删除-injars bin / classes,我能够解决这个问题.我的猜测是,因为proguard处理库项目和应用程序项目,库项目的.class文件被处理了两次.一旦在库项目的bin / classes文件夹中,另一次在应用程序项目的bin / classes文件夹中.