Node.js 从Electron打包的应用程序运行Cli命令

Node.js 从Electron打包的应用程序运行Cli命令,node.js,macos,electron,child-process,Node.js,Macos,Electron,Child Process,我正在使用和包编写Mac OSX GUI,当我在安装了Nodejs(全局)的机器上运行包好的应用程序时,一切正常。 在未安装Nodejs的计算机上,找不到该命令 我正在Electron内部使用Nativefier Cli,它具有Cli的完整路径: var cliCmd = '"'+app.getAppPath()+'/node_modules/nativefier/lib/cli.js"'; const child_process = require('child_process'); chi

我正在使用和包编写Mac OSX GUI,当我在安装了Nodejs(全局)的机器上运行包好的应用程序时,一切正常。
在未安装Nodejs的计算机上,找不到该命令

我正在Electron内部使用Nativefier Cli,它具有Cli的完整路径:

var cliCmd = '"'+app.getAppPath()+'/node_modules/nativefier/lib/cli.js"';

const child_process = require('child_process');
child_process.exec(cliCmd+' --name "App Name" "http://appname.tld" --platform darwin --arch x64 --electron-version "0.36.6"', function (error, stdout, stderr) {
  if (error) {
    console.error(`exec error: ${error}`);
    return;
  }
  console.log(`stdout: ${stdout}`);
  console.log(`stderr: ${stderr}`);
});
我收到以下错误:
“env:node:没有这样的文件或目录”

检查了
app.getAppPath()
dir,结果正确

另外,我尝试传递
env
cwd
参数,但没有成功

child_process.exec(cliCmd+' --name "App Name" "http://appname.tld" --platform darwin --arch x64 --electron-version "0.36.6"',
{
  env: {"ATOM_SHELL_INTERNAL_RUN_AS_NODE":"1"},
  cwd: app.getAppPath()
},
function (error, stdout, stderr) {
  if (error) {
    console.error(`exec error: ${error}`);
    return;
  }
  console.log(`stdout: ${stdout}`);
  console.log(`stderr: ${stderr}`);
});
我做错了什么?我也尝试了
child\u process.spawn()
,但没有任何运气。

在未安装nodejs的机器上,我需要做什么才能从我的应用程序调用打包的node_module/cli?

我在
进程
对象中找到
execPath
现在我可以在没有全局安装nodejs的机器上执行nodejs命令。它使用的是电子的内置版本

child_process.exec(process.execPath+' '+cliCmd+' --name "App Name" "http://appname.tld" --platform darwin --arch x64 --electron-version "0.36.6"',
{
  env: {"ATOM_SHELL_INTERNAL_RUN_AS_NODE":"1"},
  cwd: app.getAppPath()
},
function (error, stdout, stderr) {
  if (error) {
    console.error(`exec error: ${error}`);
    return;
  }
  console.log(`stdout: ${stdout}`);
  console.log(`stderr: ${stderr}`);
});

当我尝试此操作时,我得到了
错误:找不到模块'/Users/abeall/tools/electron/node\u modules/electron/dist/electron.app/Contents/Frameworks/electron Helper.app/Contents/Resources/electron.asar/browser/init.js'