我在升级到 Android Studio 3.0 后的 gradle 构建过程中得到这个:
Execution failed for task ':lf-android-myproject:transformClassesAndResourcesWithPrepareIntermediateJarsForDebug'.
java.lang.RuntimeException: java.util.zip.ZipException: duplicate entry: com/my/package/name/SomeCustomView.class
有问题的类来 self 的代码,而不是来自库。
它只发生在我声明了自定义属性的类中:
<declare-styleable name="SomeCustomView">
<attr name="someCustomViewText" format="reference|string" />
</declare-styleable>
我可以通过清理然后从控制台构建来修复它,但它最终会再次弹出。
我也可以通过重命名类或样式对象来修复它,但我真的不想为了绕过 AS(或 gradle?)可能会在未来修复的错误而弄乱我们的代码。
这是 Android Studio 的错误吗?有任何解决方法吗?
Gradle版本是:gradle-4.1-all
Android Gradle 插件版本为:3.0.1
最佳答案
此问题可能出于不同的原因而被发现。但是,这里有一种方法可以修复 Gradle 构建错误:“java.util.zip.ZipException: duplicate entry”
如果您更新了 android 项目中的一些库,然后在组装它时遇到以下错误(或类似的错误):
原因是有些库有类似的依赖关系,编译器无法选择合适的。
根据日志,问题在重复的类中 组织/intellij/lang/annotations/Identifier.class 要找到此类用法,您应该过滤详细的 gradle 日志:
按照您的情况进行操作,我想您会找到解决方案。
关于Android Studio 3.1 gradle 构建抛出 java.util.zip.ZipException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49556252/