【发布时间】:2014-11-21 11:33:02
【问题描述】:
我一直在使用 Gradle Android 插件 v0.12,但我决定升级到新版本,因为我需要新功能(而且提高的速度总是一个加分项)。
更新到新的 v0.13.1 后,我不断收到“重复的 Zip 条目”(来自 Proguard),而之前一切正常。完整的错误:
java.io.IOException: 无法写入 [/Users/.../classes-proguard/netherlands/release/classes.jar] (无法读取 [/Users/.../.gradle/caches /modules-2/files-2.1/org.apache.commons/commons-io/1.3.2/b6dde38349ba9bb5e6ea6320531eae969985dae5/commons-io-1.3.2.jar(;;;;;;!META-INF/MANIFEST.MF) ](重复的 zip 条目 [commons-io-1.3.2.jar:org/apache/commons/io/CopyUtils.class]))(CopyUtils 之前是 FileUtils)。
我正在使用以下打包选项:packagingOptions
{
exclude 'AndroidManifest.xml'
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INF/notice.txt'
exclude 'META-INF/license.txt'
exclude 'META-INF/LICENSE.txt'
exclude 'META-INF/NOTICE.txt'
exclude 'META-INF/MANIFEST.MF'
exclude '!META-INF/MANIFEST.MF'
exclude 'META-INF/services/javax.annotation.processing.Processor'
}
如您所知,我排除了清单文件...
只是为了测试它,我改回 0.12.0 版本,一切都恢复正常,回到 0.13.* 并且它坏了(但我需要 0.13.*)!
此外,我正在使用以下库:
- Robospice
- 改造
- OkHttp
- 飞镖
- 冰镐
- 黄油刀
- 面包丁
- 平滑进度条
- NineoldsAndroid(在 BetterPickers 库中)
有人也遇到过这个问题吗?如果是这样,任何人都可以帮助我(现在已经在这个问题上打破了我的头脑 2 天!)?谢谢!
【问题讨论】:
-
删除主目录中的 .gradle 文件夹并重建是否有效?如果你清理你的项目并重建呢?
-
我尝试删除 Gradle 缓存、.gradle 文件夹,... 没有任何效果,但 Gaëten 的回答确实有效!好像是构建工具出错了!
-
您需要运行
./gradlew -q app:dependencies,查看您的哪些重复依赖项符合排除条件。
标签: android gradle android-studio proguard