2013-04-23 101 views
6

我有兩個項目Project_A和Project_B。 Project_B是Project_A的庫項目。 Project_B在其libs文件夾中有外部jar。Proguard:在Android中排除庫項目

,當我在Project_A運行ProGuard的,我得到的錯誤是:

(Unknown verification type [69] in stack map frame)) 

錯誤是指存在於外部JAR文件(這是目前在Project_B的LIBS)

我使用標準我們在android SDK中獲得的proguard.cfg文件。

我已經嘗試過「-keep class。**」,但我仍然得到相同的錯誤。

請讓我知道是否存在一種方式,我可以排除Project_B(庫項目)和它的罐子混淆。我只想在Project_A上運行proguard,而不是在其庫項目上運行。

+0

http://tools.android.com/recent/proguardimprovements。檢查示例@ http://proguard.sourceforge.net/index.html#manual/examples.html – Raghunandan 2013-04-23 11:20:44

回答

0

ProGuard需要整個類層次結構來正確處理應用程序,所以您不能真正離開庫。

庫代碼似乎已損壞;最有可能的是,它已經被損壞它的工具後處理。有些工具不能正確更新驗證信息。這些信息是可選的,但ProGuard預計它會被正確組建。您應該檢查是否有更新版本的庫或後處理工具。

+0

我使用陰影插件合併成單個jar.I'm得到相同的錯誤,ProGuard指向一個內部類的一個外部庫在堆棧映射幀中顯示「未知驗證類型[73]」 – nish1013 2014-04-04 12:11:43

相關問題