我試圖添加第三方庫(JmDNS)到我的Android項目。Android Proguard重複定義
我在基礎項目目錄下創建了一個文件夾'libs',並將該jar文件放入目錄中。
當我嘗試使用Ant(ant release)構建他的項目時,我收到一個'重複定義',通知JmDNS jar文件中每個類似乎是什麼。
....
[proguard] Note: duplicate definition of library class [javax.jmdns.impl.tasks.state.Canceler]
[proguard] Note: duplicate definition of library class [javax.jmdns.impl.tasks.state.DNSStateTask]
[proguard] Note: duplicate definition of library class [javax.jmdns.impl.tasks.state.Prober]
[proguard] Note: duplicate definition of library class [javax.jmdns.impl.tasks.state.Renewer]
[proguard] Note: duplicate definition of library class [javax.jmdns.impl.tasks.state.package-info]
[proguard] Note: duplicate definition of library class [javax.jmdns.package-info]
[proguard] Note: there were 357 duplicate class definitions.
構建也失敗,出現以下錯誤:
BUILD FAILED
/path/Tools/ant-android-scala/build-scala.xml:183: Can't write [/path/bin/projectname-debug-shrinked.jar] (Can't read [/path/projectname/libs/jmdns.jar(;;;;!META-INF/MANIFEST.MF,!library.properties)] (Duplicate zip entry [jmdns.jar:javax/jmdns/JmDNS$Delegate.class]))
我確信,jar文件僅包含一次,還有就是我包括複製源文件沒有其他辦法項目中的任何地方。
爲什麼Proguard會抱怨重複的定義?
一個乾淨的項目設法修復它(在嘗試了一堆建議的答案後)似乎是一個陳舊的版本的lib被保存在生成文件夾或東西 – Fonix 2016-01-04 03:19:16