【问题标题】:Node.js can't get output of spawned processNode.js 无法获得生成进程的输出
【发布时间】:2014-02-13 15:46:33
【问题描述】:

这段代码得到spawned process的输出。怎么了?节点版本为 v0.10.22

var spawn = require('child_process').spawn;
var what = 'java';
var spawned = spawn(what,  ['-version']);

console.log('starting `'+what+' -version`');

spawned.stdout.setEncoding('utf8');
spawned.stdout.on('data', function (data) {
    console.log(data);
});

spawned.on('close', function (code) {
    console.log('process exit code ' + code);
});

var whendone = function() {
    console.log('done');
};
setTimeout(whendone,5000);

如您所见,我什至添加了一些超时来等待启动的进程完成。

【问题讨论】:

    标签: javascript node.js process


    【解决方案1】:

    java -version 写信给stderr

    【讨论】:

    • 是的,对于node,需要--version,否则进入REPL。这些是我尝试过的例子。
    猜你喜欢
    • 1970-01-01
    • 2012-12-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-10
    • 2011-09-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多