You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React Native Expo项目执行npm run android启动失败求助

React Native Android编译报错:路径过长及Ninja Manifest异常

核心错误分析

编译时触发两个关键问题:

  1. 项目路径过长,超出CMake的CMAKE_OBJECT_PATH_MAX(250字符)限制,导致目标文件无法正确生成
  2. Ninja构建工具提示manifest 'build.ninja' still dirty after 100 tries,说明构建缓存或文件存在异常

解决方案

  • 缩短项目路径
    Windows系统对文件路径长度有严格限制,将项目迁移到更短的路径下,比如从C:/Users/Mobile Apps/React Native/AwesomeProject改为C:/RN/AwesomeProject,直接减少路径字符数,从根源避免路径超限问题。

  • 清理构建缓存与依赖

    1. 删除Android端CMake缓存:
      rd /s /q android\.cxx
      
    2. 删除Gradle全局缓存:
      rd /s /q %USERPROFILE%\.gradle\caches
      
    3. 清理并重新安装Node依赖:
      rm -rf node_modules && npm install
      
    4. (Expo项目)重新生成原生项目文件:
      npx expo prebuild --clean
      
  • 增大CMake路径长度限制
    在android/app/build.gradle的CMake配置中添加路径长度参数,放宽限制:

    android {
        // ...其他配置
        externalNativeBuild {
            cmake {
                arguments "-DCMAKE_OBJECT_PATH_MAX=512"
            }
        }
    }
    
  • 修复Ninja Manifest异常

    1. 关闭所有占用项目文件的进程(IDE、终端等),避免文件锁定
    2. 手动删除报错路径下的build.ninja文件:
      找到路径C:/Users/Mobile Apps/React Native/AwesomeProject/node_modules/expo-modules-core/android/.cxx/Debug/1g6k43ua/x86_64/build.ninja,删除后重新执行编译命令

内容的提问来源于stack exchange,提问作者drew

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 05:12:13