执行ResourceCompilerRunnable失败:键盘应用资源编译报错求助
Android资源编译错误解决指南
问题本质
这个错误是AAPT2在合并资源时,遇到资源表冲突或重复定义,导致无法完成资源编译。
具体排查步骤
- 排查重复资源
全局搜索项目所有values目录(含主模块、变体目录、依赖库),找是否有同名资源(比如相同name属性的string、color、style等)。重点查不同模块或依赖库之间的资源重复。 - 直接查看合并后的错误文件
打开报错路径里的values.xml,检查文件内是否有重复的资源项,或者XML语法错误(比如未闭合标签、特殊字符未转义)。 - 清理构建缓存
执行命令清理后重新构建:
或者在Android Studio里点./gradlew clean assembleDebugBuild -> Clean Project再Rebuild Project。 - 检查资源语法格式
核对所有values资源文件,确保:- XML标签都正确闭合
- 特殊字符(如
&、<)已转义为&、< - 尺寸(dimen)有正确单位,颜色值格式合法
- 处理依赖库资源冲突
用./gradlew app:dependencies查看依赖树,找可能存在资源冲突的第三方库,尝试升级库版本,或者在依赖声明中排除冲突的资源模块。 - 关闭增量资源编译
在模块的build.gradle中添加配置,强制全量编译:android { aaptOptions { incremental false } }
内容的提问来源于stack exchange,提问作者Mobile VPN
相关产品推荐
相关产品推荐

