Gradle 升级到 7.x 导致 build shrinkDevInhouseQaRes 失败

Gradle 升级到 7.x 之后,发现 build 会失败,日志大概如下:

FAILURE: Build failed with an exception.

What went wrong:
Execution failed for task ':app:shrinkDevInhouseQaRes'.

A failure occurred while executing com.android.build.gradle.internal.transforms.ShrinkProtoResourcesAction
ParseError at [row,col]:[1,1]
Message: 前言中不允许有内容。

Try:
Run with --info or --debug option to get more log output.
Run with --scan to get full insights.

Exception is:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:shrinkDevInhouseQaRes'.
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.lambda$executeIfValid$1(ExecuteActionsTaskExecuter.java:142)
at org.gradle.internal.Try$Failure.ifSuccessfulOrElse(Try.java:282)

原因是 Gradle 7.x 版本使用的新版本的 shrinker,它可能是有 bug,所以禁用它,使用老版本的 shrinker 即可。
解决方法:
在 gradle.properties 文件中加入一行:

android.enableNewResourceShrinker=false
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容