nodejs更新后ENOENT

时间:2014-05-27 15:17:44

标签: node.js

我已经将v.0.10.26到v.0.10.28中的nodejs更新了,突然发现了这段代码:

// Start slave process
var process = require('child_process');
var ls = process.exec('node slave.js', function (error, stdout, stderr) {
    if (error) {
        console.log(error.stack);
        console.log('Error code: '+error.code);
        console.log('Signal received: '+error.signal);
        console.log('stdout: ' + stdout);
        console.log('stderr: ' + stderr);
    }
    else{
        console.log('ok!');
    }

});

开始将此错误转储到控制台:

Error: spawn ENOENT
    at errnoException (child_process.js:998:11)
    at Process.ChildProcess._handle.onexit (child_process.js:789:34)
Error code: ENOENT
Signal received: undefined
stdout:
stderr:

我正在运行Windows 8.1 x64。我整个上午都试图找到一个解决方案,而且无法找到造成这种情况的原因。

编辑1

slave.js与主文件位于同一目录中。

编辑2

为了确保该节点能够找到' slave.js',我使用了这段代码:

fs.exists('slave.js', function(exists) {
    if (exists) {
        console.log('It exists!');
    }
});

是的,Node说该文件存在。

编辑3 恢复到节点0.10.26。同样的问题。我已经从Python 3降级到2.7。这有关系吗?

1 个答案:

答案 0 :(得分:1)

可能不是找不到的slave.js文件,而是node本身。请尝试检查您的路径,看看升级后路径中是否还有node