Execution failed for task ‘:zz:transformClassesAndResourcesWithProguardForRelease‘
发布日期:2021-06-29 18:30:28 浏览次数:2 分类:技术文章

本文共 3319 字,大约阅读时间需要 11 分钟。

背景

debug版本编译正常,release版本编译报错.

编译报错日志

Warning: can't write resource [META-INF/businessframe_release.kotlin_module] (Duplicate zip entry [6.jar:META-INF/businessframe_release.kotlin_module])Warning: can't write resource [META-INF/core_release.kotlin_module] (Duplicate zip entry [7.jar:META-INF/core_release.kotlin_module])  Copying resources from program jar [/Users/jerry/projects/xx/yy/zz/build/intermediates/transforms/__ReplaceSuperClass__/release/7.jar]  Copying resources from program jar [/Users/jerry/projects/xx/yy/zz/build/intermediates/transforms/__ReplaceSuperClass__/release/8.jar]Warning: Exception while processing task java.io.IOException: Can't write [/Users/jerry/projects/xx/yy/zz/build/intermediates/transforms/proguard/release/0.jar] (Can't read [/Users/jerry/projects/xx/yy/zz/build/intermediates/transforms/__ReplaceSuperClass__/release/8.jar] (Duplicate zip entry [8.jar:com/xxx/ActivityExtKt.class]))Thread(Tasks limiter_2): destructionWarning: can't write resource [META-INF/olddriver_release.kotlin_module] (Duplicate zip entry [8.jar:META-INF/olddriver_release.kotlin_module]):zz:transformClassesAndResourcesWithProguardForRelease FAILED247 actionable tasks: 37 executed, 21 from cache, 189 up-to-dateapkFile==>/Users/jerry/projects/xx/yy/zz/build/outputs/apk/release/xx_1.9.0.apkFAILURE: Build failed with an exception.* What went wrong:Execution failed for task ':zz:transformClassesAndResourcesWithProguardForRelease'.> Job failed, see logs for details* Try:Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.* Get more help at https://help.gradle.orgBUILD FAILED in 53s{"errcode":0,"errmsg":"ok"}5:13:27 PM: Task execution finished 'phInstallPluginRelease'.

分析

具体问题在报错信息中并不明显,没有出现明显的Error信息,只有一堆Warning.

关键点在倒数第二行的Warning中:
Warning: Exception while processing task java.io.IOException: Can’t write [/Users/jerry/projects/xx/yy/zz/build/intermediates/transforms/proguard/release/0.jar] (Can’t read [/Users/jerry/projects/xx/yy/zz/build/intermediates/transforms/ReplaceSuperClass/release/8.jar] (Duplicate zip entry [8.jar:com/xxx/ActivityExtKt.class]))
Thread(Tasks limiter_2): destruction

提示:com/xxx/ActivityExtKt.class重复.

按照这个类名去找,果然发现有两个模块出现了同名的类(包路径也相同).

解决方案

将重复的类的包名修改掉,避免重复.

进一步思考

后续如何快速排查此类问题.

可以用./gradlew -s打印出报错详细信息,有助问题排查.
打印样例:

Caused by: java.io.IOException: Duplicate zip entry [8.jar:xx/ActivityExtKt.class]        at proguard.io.JarWriter.getOutputStream(JarWriter.java:138)        at proguard.io.FilteredDataEntryWriter.getOutputStream(FilteredDataEntryWriter.java:106)        at proguard.io.FilteredDataEntryWriter.getOutputStream(FilteredDataEntryWriter.java:106)        at proguard.io.FilteredDataEntryWriter.getOutputStream(FilteredDataEntryWriter.java:92)        at proguard.io.ClassRewriter.read(ClassRewriter.java:68)        at proguard.io.FilteredDataEntryReader.read(FilteredDataEntryReader.java:87)        at proguard.io.FilteredDataEntryReader.read(FilteredDataEntryReader.java:87)        at proguard.io.JarReader.read(JarReader.java:65)        at proguard.io.DirectoryPump.readFiles(DirectoryPump.java:65)        at proguard.io.DirectoryPump.pumpDataEntries(DirectoryPump.java:53)        at proguard.InputReader.readInput(InputReader.java:184)        ... 12 more

转载地址:https://cxyxy.blog.csdn.net/article/details/109294257 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:ScrollView嵌套GridView/Listview,Scrollview总是滚动到GridView/Listview的位置问题
下一篇:如何让文本居右对齐,换行后又居左对齐

发表评论

最新留言

第一次来,支持一个
[***.219.124.196]2024年05月01日 03时45分38秒