如何研究产生错误的生成调用:
- 使用NODE_DEBUG = child_process,向@ karl-richter积分。 简单,快速,2019年10月
- 用包装纸装饰
child_process.spawn
,@ @ jiaji-zhou。 简单,快捷,2015年1月 - 漫长的过程,归功于@laconbass。 复杂,耗时,2014年12月
已知的常见原因
环境问题
- 该命令可执行文件在系统中不存在(未安装依赖项)。 查看 prominc的答案
- 在
PATH
环境变量指定的目录中,命令可执行文件不存在。 仅Windows的错误/怪癖
‘.cmd’扩展名/ shell:是。 _看到李正回答
- 管理员权限。
spawn('command', ['--argument', 'list'], { cwd, env, ...opts })使用错误指定的工作目录(
opts.cwd
)不存在- 命令中的参数列表
String
spawn('command --wrong --argument list') - 命令字符串中的环境变量
spawn('ENV_VAR=WRONG command') - 参数列表
Array
指定为String
spawn('cmd', '--argument list') - 未设置环境
PATH
变量=>spawn('cmd', [], { env: { variable } }spawn('cmd', [], { env: { ...process.env, variable } }
有2个可能的来源
ENOENT:
- 您正在编写的代码
- 您依赖的代码
当源是您依赖的代码时,通常的原因是 环境问题 (或Windows怪癖)



