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

Windows环境下Expo Android构建失败:expo-modules-core中ninja子命令执行失败

Windows环境下Expo Android构建失败:expo-modules-core中ninja子命令执行失败

嗨,我之前在Windows 11上跑Expo 52的Android构建时也踩过几乎一模一样的坑,结合自己和社区里的排查经验,给你几个实用的解决方向:

  • 检查CMake与Ninja版本兼容性
    Expo 52对Android构建工具的版本有比较严格的适配要求,你当前用的CMake 3.22.1可能和expo-modules-core的依赖不匹配。建议你试试切换到CMake 3.20.2或者3.24.0版本——这两个版本在Windows环境下和Expo 52的适配性经过很多开发者验证过。
    操作起来也简单:打开Android Studio的SDK Manager,切换到「SDK Tools」标签,勾选「Show Package Details」,找到CMake选项,选中目标版本安装后,删除项目根目录下的.android/build文件夹再重新构建。

  • 解决Windows路径过长问题
    Windows默认的文件路径长度限制很容易被触发,你看你的项目路径加上node_modules里的嵌套结构,很可能已经超过了最大长度,导致Ninja无法正确访问构建所需的文件。
    两种解决思路:要么把项目移到更短的路径下(比如C:\Proj\MyApp);要么开启Windows长路径支持:按Win+R输入regedit,定位到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem,把LongPathsEnabled的数值改成1(没有的话就新建一个DWORD(32位)值),重启电脑后再试构建。

  • 彻底清理缓存后重新构建
    缓存文件损坏是这类莫名构建失败的常见原因,你可以依次执行以下命令清空所有相关缓存:

    npx expo prebuild --clean
    cd android && gradlew clean
    

    回到项目根目录后再重新运行npx expo run:android。

  • 排查Windows Defender的拦截
    Windows Defender的实时保护有时候会误判Ninja进程或者构建临时文件,导致构建被中途拦截。你可以临时关闭实时保护试试,或者把项目目录和Android SDK目录添加到Defender的排除项列表里,再重新执行构建命令。

备注:内容来源于stack exchange,提问作者Smeagol

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.13 17:48:11