Android构建报错:Execution failed for task ':app:mergeReleaseResources'求助
报错解决方案
该mergeReleaseResources报错本质是Android资源编译阶段校验不通过,报错指向的gradle缓存内recyclerview资源文件只是校验失败的触发点,问题根源在项目自身的资源定义不符合规范,可按以下步骤排查:
1. 排查项目内values类资源文件
重点检查app/src/main/res/values目录下所有xml文件,查找存在内容的id类型<item>标签:
错误写法示例:
<item name="meeting_list_id" type="id">会议列表ID</item>
id类型的item标签内部不允许填写自定义文本,只能为空或者填写资源引用,修正为以下写法即可:
<item name="meeting_list_id" type="id"/>
同时检查所有自定义属性、样式标签的书写格式,确认没有未闭合的标签、非法特殊字符。
2. 完全清理gradle缓存
此前的清理操作未清除全局gradle缓存,按以下步骤操作:
- 关闭Android Studio,删除项目根目录下的
.gradle、.idea文件夹 - 删除当前系统用户目录下的
.gradle/caches全目录 - 重新打开Android Studio,等待依赖自动同步完成后再执行构建
3. 配置AAPT规避严格校验
若需要临时绕过资源校验完成构建,可在app/build.gradle的android配置块中添加以下代码:
android { // 保留原有配置不变,新增以下配置 aaptOptions { cruncherEnabled = false additionalParameters "--no-version-vectors" } }
同步后重新执行构建即可。
内容的提问来源于stack exchange,提问作者Camille Leonard
相关产品推荐
相关产品推荐

