私はアンドロイドライブラリプロジェクトを使用していますアンドロイドアプリケーションでProGuardのを使用しようとしていますし、私は次のようなエラーになっています:アンドロイド - ProGuardの重複したzipエントリエラー
java.io.IOException: Can't write
[/private/var/folders/Pg/PgUpPJQ-E5qxL7jX6kpdCE+++TI/-Tmp-/android_3140050575281008652.jar]
(Can't read [[email protected]]
(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
を参照しています。
私の推測では、この問題はライブラリプロジェクトを使用することに関連しており、プログアードはライブラリプロジェクトからのエントリを2回処理しようとしていると考えられます。しかし、私はこれを解決するためにどのオプションを使うべきかわからなかった。
どのような示唆/指示が高く評価されています。
更新1:-injars bin/classes
を削除することで、この問題を解決することができました。私の推測では、プログアードはライブラリプロジェクトとアプリケーションプロジェクトの両方を処理するため、ライブラリプロジェクトの.class
ファイルが2回処理されたためです。ライブラリプロジェクトのbin/classes
フォルダに1度、アプリケーションプロジェクトのbin/classes
フォルダにもう一度保存します。
'-injars bin/classes'を削除すると、どこにありますか? –