对于上下文,routes \ index.js:87在我的exec(sync)或我的exec(async)中。
我在spawn,exec或execFile中使用库child_process,win-spawn或cross-spawn获得此错误。
我尝试过运行node,npm,grunt,ant(Apache)等 - 这些都可以在命令行中运行而没有任何问题 - 有和没有参数,有和没有选项,同步和异步,我总是得到这个确切的错误(同一行和列)。
昨天我整天都在寻找解决方案,在这里找到解决方案,在Github(节点)上尝试了我发现的所有内容,但没有解决问题。
我会提供您认为有助于解决问题的任何信息。感谢您的支持。
-
Ben Fortune要求(尝试过所有的同步和异步,只显示了第一个例子):
var exec = require('child_process').exec;
exec('node', function(err){
if(err) throw err;
});
-
var exec = require('child_process').exec;
var child = exec('node');
child.on('error', function(){ throw arguments['0']; });
-
var exec = require('child_process').execFile;
exec('/path/to/node', function(err){
if(err) throw err;
}
-
var spawn = require('child_process').spawn
spawn('node', function(err){
if(err) throw err;
}
-
var spawn = require('child_process').spawn
spawn('cmd', ['/s', '/c', '"C:\\mycmd.bat"'], {
windowsVerbatimArguments: true
});
我已经尝试了所有这些包装win-spawn和交叉生成,有和没有' .exec' (等)附加要求。我尝试了stdio: 'inherit'
等选项。
我正在使用Windows 8.1 64位,以管理员身份运行命令。
-
Node js - Error: spawn ENOENT (Windows 8.1)
http://www.zescience.com/node-js-error-spawn-enoent-windows-8-1-167370
一些具有相同错误的示例,除了在我的情况下,我调用exec函数,而不是一些第三方软件包。
我也尝试将exec放在代码的其他地方,调用的位置不是问题。
答案 0 :(得分:0)
win-spawn和cross-spawn失败,spawn-cmd工作。
我不知道为什么在spawn-cmd的时候交叉生成不起作用,因为它们非常相似,但是你去了。至于原始问题,我猜这是节点的问题。