错误:任务':app:packageRelease'。>执行失败无法计算.. \ app \ build \ intermediates \ classes-proguard \ .. \ release \ classes.jar的哈希值

时间:2015-09-03 08:22:31

标签: integration proguard

当我从gradle文件启用Proguard并生成发布版本文件时,收到以下错误消息。

  

处理任务java.io.IOException时出现异常:   proguard.ParseException:期待类型和名称,而不仅仅是' '   之前'('在文件的第169行   ' S:\工作空间\项目.. \应用\构建\中间体\ proguard的规则.. \释放\ aapt_rules.txt'     在   com.android.build.gradle.tasks.AndroidProGuardTask $ 1.run(AndroidProGuardTask.java:117)     在com.android.builder.tasks.Job.runTask(Job.java:48)at   com.android.build.gradle.tasks.SimpleWorkQueue $ EmptyThreadContext.runTask(SimpleWorkQueue.java:41)     在com.android.builder.tasks.WorkQueue.run(WorkQueue.java:227)at   java.lang.Thread.run(Thread.java:745)错误:proguard.ParseException:   期待类型和名称而不仅仅是' '之前'('在第169行   的文件   ' S:\工作空间\项目.. \应用\构建\中间体\ proguard的规则.. \释放\ aapt_rules.txt'     在   proguard.ConfigurationParser.parseMemberSpecificationArguments(ConfigurationParser.java:908)     在   proguard.ConfigurationParser.parseClassSpecificationArguments(ConfigurationParser.java:748)     在   proguard.ConfigurationParser.parseKeepClassSpecificationArguments(ConfigurationParser.java:534)     在proguard.ConfigurationParser.parse(ConfigurationParser.java:165)     在   proguard.gradle.ProGuardTask.getConfiguration(ProGuardTask.java:1142)     在proguard.gradle.ProGuardTask.proguard(ProGuardTask.java:1074)at   com.android.build.gradle.tasks.AndroidProGuardTask.doMinification(AndroidProGuardTask.java:139)     在   com.android.build.gradle.tasks.AndroidProGuardTask $ 1.run(AndroidProGuardTask.java:115)     ......还有4个       错误:任务':app:packageProRelease'执行失败。 >无法计算哈希值   S:\工作空间\项目\应用\构建\中间体\类-proguard的\临\释放\ classes.jar

我在代码中使用以下库:

  1. AndroidScanLib.jar
  2. apache-mime4j-core-0.7.jar
  3. 的HttpClient-4.1.2.jar
  4. httpmime-4.2.3.jar
  5. libGoogleAnalyticsServices.jar
  6. MobileImagingEngine.jar
  7. MobileImagingEngine_Doc.jar
  8. SmartScan.jar
  9. sqlcipher.jar

2 个答案:

答案 0 :(得分:6)

一种奇怪的解决方法:禁用minifyEnabled(minifyEnabled false),生成签名的APK,然后重新启用它(minifyEnabled true)并再次生成签名的APK。希望这有效。

答案 1 :(得分:2)

在我的情况下,我正在使用我创建的自定义库,并且我已将minifyEnabled设置为true,并且在依赖模块中,我再次执行相同的minifyEnabled true。只保留在一个地方解决了我的问题。除了你自己的库以外,也可以是同样的情况!