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

使用npx create-react-app创建React应用时遇spawn UNKNOWN错误求助

解决npx create-react-app my-app抛出的Error: spawn UNKNOWN错误

问题描述

执行npx create-react-app my-app创建React应用时触发以下错误:

PS C:\Users\m.saral\Desktop\app> npx create-react-app my-app

Creating a new React app in C:\Users\m.saral\Desktop\app\my-app.

Installing packages. This might take a couple of minutes.
Installing react, react-dom, and react-scripts with cra-template...


Aborting installation.
Error: spawn UNKNOWN
    at ChildProcess.spawn (node:internal/child_process:420:11)
    at Object.spawn (node:child_process:733:9)
    at spawn (C:\Users\m.saral\AppData\Roaming\npm\node_modules\create-react-app\node_modules\cross-spawn\index.js:12:24)
    at C:\Users\m.saral\AppData\Roaming\npm\node_modules\create-react-app\createReactApp.js:383:19
    at new Promise (<anonymous>)
    at install (C:\Users\m.saral\AppData\Roaming\npm\node_modules\create-react-app\createReactApp.js:334:10)
    at C:\Users\m.saral\AppData\Roaming\npm\node_modules\create-react-app\createReactApp.js:461:16
    at processTicksAndRejections (node:internal/process/task_queues:96:5) {
  errno: -4094,
  code: 'UNKNOWN',
  syscall: 'spawn'

Deleting generated file... package.json
Deleting my-app/ from C:\Users\m.saral\Desktop\app
Done.

环境信息:

  • Node.js版本:v16.18.0
PS C:\Users\m.saral\Desktop\app> node -v
v16.18.0
  • npm版本:8.19.2

已尝试但无效的操作:

  • 以管理员身份运行命令提示符
  • 卸载全局及本地create-react-app:
npm uninstall -g create-react-app
npm uninstall create-react-app
  • 卸载并重新安装Node.js
  • 更新npm至最新版本:
npm install npm@latest -g

解决方案

1. 检查并修复Node.js环境变量

  • 打开系统环境变量设置,找到Path变量,确认Node.js安装目录(默认C:\Program Files\nodejs\)存在其中,无重复或错误路径。
  • 确保npm全局模块路径(通常C:\Users\你的用户名\AppData\Roaming\npm)也在Path中。
  • 修改后重启终端,重新执行创建命令。

2. 临时禁用杀毒/防火墙实时保护

Windows下部分杀毒软件(如Windows Defender、第三方工具)可能拦截Node.js子进程创建,临时关闭实时保护后重试npx create-react-app my-app。

3. 指定create-react-app版本执行

跳过全局依赖,直接指定稳定版本创建项目:

npx create-react-app@5.0.1 my-app

4. 清理npm缓存

执行命令清理缓存后重试:

npm cache clean --force

5. 切换到纯英文无空格的项目路径

当前路径若包含特殊字符或空格可能导致子进程启动失败,尝试将项目创建到纯英文路径,比如C:\projects\my-app。

6. 测试Node.js子进程功能

在终端执行以下命令,检查子进程是否能正常启动:

node -e "require('child_process').spawn('npm', ['--version']).on('exit', (code) => console.log(code))"

返回0则子进程功能正常;若返回错误,需重新修复Node.js安装或检查系统权限。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 18:20:39