Windows环境下React Native安卓构建报错:缺失drawable资源
React Native Android构建报错:drawable/material_ic_keyboard_arrow_right_black_24dp 资源找不到(Windows环境)
错误信息
ERROR:C:\Users\userme\myapp\android\app\build\intermediates\incremental\developmentRelease\mergeDevelopmentReleaseResources\merged.dir\values\values.xml:1984: AAPT: error: resource drawable/material_ic_keyboard_arrow_right_black_24dp (aka com.myapp.development:drawable/material_ic_keyboard_arrow_right_black_24dp) not found.
已尝试但无效的操作
- 清理构建文件夹
- 卸载/重新安装依赖包
- 清理Gradle缓存
- 在Android Studio中同步文件
环境配置
RN 0.72、Java 17、Node.js 20.17.0,仅单台Windows笔记本出现该问题,同环境其他Windows机器构建正常。
解决方案
1. 排查资源文件的存在性与大小写问题
Windows文件系统不区分大小写,但Git的大小写敏感设置可能导致资源文件未正确拉取:
- 手动检查
android/app/src/main/res/下的drawable目录(含各分辨率子目录,如drawable-mdpi),确认是否存在material_ic_keyboard_arrow_right_black_24dp.png或对应的矢量图XML文件。 - 若文件缺失,从正常机器复制该资源到对应目录;或执行
git config core.ignorecase false后,重新拉取Git仓库代码。
2. 修复Windows文件权限问题
权限不足可能导致构建过程无法读取或生成资源文件:
- 右键项目根目录,进入「属性」→「安全」,确保当前用户拥有「完全控制」权限。
- 以管理员身份打开终端,执行构建命令:
cd android ./gradlew assembleDevelopmentRelease
3. 清除Android Studio本地缓存与索引
除Gradle缓存外,Android Studio的索引缓存也可能引发异常:
- 关闭Android Studio,删除项目目录下的
.idea文件夹和android/app/.cxx文件夹。 - 删除用户目录下的Android Studio缓存:
C:\Users\[你的用户名]\.AndroidStudio[版本号]\system\caches。 - 重新打开Android Studio,同步Gradle后重新构建。
4. 验证Android SDK资源完整性
该资源属于Material Design组件,可能本地SDK的Build-Tools或Google Repository损坏:
- 打开Android Studio的SDK Manager,切换到「SDK Tools」标签,勾选「Show Package Details」。
- 确认对应版本的Android SDK Build-Tools(RN 0.72推荐33.0.2)已完整安装,若有损坏则重新安装;同时确保「Google Repository」包已安装。
5. 重置本地Git仓库状态
Git拉取过程中可能出现文件缺失或损坏:
- 备份本地未提交的修改后,执行以下命令重置仓库:
git reset --hard HEAD git clean -fdx git pull
6. 重新安装依赖并校验平台文件
部分依赖在Windows环境下可能生成异常文件:
- 删除项目根目录的
node_modules、package-lock.json(或yarn.lock)。 - 执行
npm install(或yarn install)重新安装依赖,避免使用不稳定的代理或镜像源。
内容的提问来源于stack exchange,提问作者Said Pc II
相关产品推荐
相关产品推荐

