构建React Native应用时出现:app:configureCMakeDebug[arm64-v8a]执行失败如何解决?
React Native构建CMake错误解决方法
核心问题定位
从报错信息来看,核心问题是生成的Android-rncli.cmake文件中add_subdirectory调用参数错误,同时伴随RNDateTimePicker代码生成目标未找到的问题,大概率是依赖缓存残留、版本不兼容或自动生成文件损坏导致。
分步解决步骤
1. 彻底清理所有缓存与生成文件
执行以下命令,移除所有可能的残留文件:
# 删除项目根目录的依赖和锁文件 rm -rf node_modules rm yarn.lock package-lock.json # 清理Android端构建文件 cd android ./gradlew clean rm -rf .cxx build cd .. # 重新安装依赖 yarn install # 或 npm install
2. 校验RNDateTimePicker版本兼容性
RNDateTimePicker与React Native版本存在严格兼容要求:
- 查看你的React Native版本,对照picker官方兼容表调整版本(如RN 0.70+需搭配picker 6.x及以上版本)
- 执行命令更新/降级picker:
yarn add @react-native-community/datetimepicker@[兼容版本号]
3. 手动触发代码生成
自动生成的cmake文件可能存在损坏,手动执行RN代码生成命令修复:
npx react-native generate-codegen-artifacts --path ./package.json --output-dir ./android/app/build/generated/rncli
执行完成后重新尝试构建。
4. 指定兼容的NDK版本
高版本NDK可能与部分RN版本不兼容,在android/build.gradle中指定稳定NDK版本:
buildscript { ext { ndkVersion = "23.1.7779620" // 此版本适配多数RN 0.68-0.72版本 } // ...其他配置 }
5. 清理模拟器残留
模拟器弹出错误对话框是因为旧安装包残留,操作如下:
- 打开模拟器,进入「设置」-「应用」,找到你的APP并卸载
- 进入模拟器的「系统设置」-「重置」,选择「擦除数据」(或在Android Studio的AVD管理器中wipe data)
- 重新构建并安装APP
额外排查方向
如果以上步骤无效,可尝试:
- 排查最近新增的Native模块,临时移除后测试是否能正常构建,定位是否为新模块的cmake配置问题
- 重新克隆项目,从头安装依赖并构建,排除本地文件损坏的可能
内容的提问来源于stack exchange,提问作者Wiem Ben yahia
相关产品推荐
相关产品推荐

