无法访问 child_process API
Cannot access child_process API
我有以下试图执行二进制文件的微型 program.js
:
var childProcess = require('child_process');
var path2Binary = '/home/myuser/myproj/bins/mybin';
var par = '--file=' + '/home/myuser/myproj/files/myfile.txt';
var ret = childProcess.execFileSync(path2Binary, [par]);
if (!ret) throw 'Error invoking process!';
var cnt = ret.stdout;
if (!cnt) throw 'Error retrieving output!';
console.log(cnt);
程序试图执行一个二进制文件并向它传递一个参数(一个文件)。然后将显示此过程的输出。
我尝试 运行 这个:node program.js
,但得到以下结果
var ret = childProcess.execFileSync(path2Binary, [par]);
^
TypeError: Object #<Object> has no method 'execFileSync'
at Object.<anonymous> (/home/myuser/myproj/program.js:6:24)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)
at startup (node.js:119:16)
at node.js:929:3
更多信息
我运行ning在CentOS上,Node版本是v0.10.36.
我尝试了 运行ning sudo yum install nodejs
,但它告诉我它已经安装,所以 Node 安装看起来还不错。
有什么问题?
旁注...
如果我将 childProcess.execFileSync
替换为 childProcess.spawn
,我会得到相同的结果。
如果我把第一行改成下面这样:
var exec = require('child_process').execFileSync;
然后我在 exec
上得到一个未定义的异常。
节点 v0.10.36 不支持同步子进程 - https://nodejs.org/docs/v0.10.36/api/child_process.html
看起来它可能是在 0.12 中引入的。
我有以下试图执行二进制文件的微型 program.js
:
var childProcess = require('child_process');
var path2Binary = '/home/myuser/myproj/bins/mybin';
var par = '--file=' + '/home/myuser/myproj/files/myfile.txt';
var ret = childProcess.execFileSync(path2Binary, [par]);
if (!ret) throw 'Error invoking process!';
var cnt = ret.stdout;
if (!cnt) throw 'Error retrieving output!';
console.log(cnt);
程序试图执行一个二进制文件并向它传递一个参数(一个文件)。然后将显示此过程的输出。
我尝试 运行 这个:node program.js
,但得到以下结果
var ret = childProcess.execFileSync(path2Binary, [par]);
^
TypeError: Object #<Object> has no method 'execFileSync'
at Object.<anonymous> (/home/myuser/myproj/program.js:6:24)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)
at startup (node.js:119:16)
at node.js:929:3
更多信息
我运行ning在CentOS上,Node版本是v0.10.36.
我尝试了 运行ning sudo yum install nodejs
,但它告诉我它已经安装,所以 Node 安装看起来还不错。
有什么问题?
旁注...
如果我将 childProcess.execFileSync
替换为 childProcess.spawn
,我会得到相同的结果。
如果我把第一行改成下面这样:
var exec = require('child_process').execFileSync;
然后我在 exec
上得到一个未定义的异常。
节点 v0.10.36 不支持同步子进程 - https://nodejs.org/docs/v0.10.36/api/child_process.html
看起来它可能是在 0.12 中引入的。