我遇到spawnSync的问题是给我ENOENT简单的“npm install”。有人可以帮助我吗?
======= NODE SCRIPT ==========
var child = require('child_process').spawnSync('npm', ['install']);
console.log(child.error);
=====输出==========
[Error: spawnSync npm ENOENT]
code: 'ENOENT',
errno: 'ENOENT',
syscall: 'spawnSync npm',
path: 'npm',
spawnargs: [ 'install' ]
仅适用于Windows,但不适用于OS X.
答案 0 :(得分:6)
我想出了这个问题。在Windows上,某些命令需要以.cmd
为后缀才能工作。在此示例中,此更新的命令适用于我:
require('child_process').spawnSync('npm.cmd', ['install']);
答案 1 :(得分:0)
或者您可以使用cross-spawn使其跨平台工作