NWJS(' child_process')。exec命令未找到

时间:2015-07-07 00:42:47

标签: javascript process exec node-webkit

大家好我正在制作我的第一个节点webkit应用程序,一切都很顺利。直到我想"发布"它。我的应用程序使用子进程在命令行上运行命令,但我安装了我需要使用npm install -g运行的模块,所以它只适用于我。为了尝试修复这个我没有-g再次安装它但我仍然找不到命令。我怎么能参考呢?

代码:

var exec = require('child_process').exec,
child;

child = exec('peerflix "'+q+'" --vlc',function (error, stdout, stderr){
    console.log('stdout: ' + stdout);
    console.log('stderr: ' + stderr);
    if (error !== null) {
      console.log('exec error: ' + error);
    }
}); 

2 个答案:

答案 0 :(得分:2)

未找到命令问题是由于应用程序的PATH不等于系统路径。因此process.env.PATH不包含节点env:' / usr / local / bin'。 我已经想到的一种方法是使用节点env位置重置process.env.PATH。

在使用exec之前,请设置process.env.PATH,如下所示:



var isWin = /^win/.test(process.platform);

if (!isWin) {
  process.env.PATH = process.env.PATH + ':/usr/local/bin';
}




答案 1 :(得分:0)

所以我花了一个小时试图修复它,它得到了它!以下是任何需要它的人

peerflix命令使用一个名为app.js的文件,所有我必须做的就是用nwjs运行,所以工作命令如下所示:

'./nwjs.app/contents/macos/nwjs ./source/node_modules/peerflix/app.js "'+q+'" --vlc'