节点webkit - 无法派生子进程(错误:产生EACCES)
问题描述:
我有一块nodejs代码(link)阻塞。所以,我试图在子进程中运行它。节点webkit - 无法派生子进程(错误:产生EACCES)
我使用下面的代码叉一个子进程:
var path = require('path');
var nodeWebkitPath = path.dirname(process.execPath);
var childProcess = require('child_process');
var macEventDetectorChildProcess = childProcess.fork("./node/worker/osxEventsDetector.js",{
execPath : nodeWebkitPath
});
每次我尝试使用此代码运行我的应用程序我得到一个错误:
Time :[Mon Sep 19 2016 13:16:42 GMT+0530 (IST)]
Error: spawn EACCES
at exports._errnoException (util.js:893:11)
at ChildProcess.spawn (internal/child_process.js:302:11)
at exports.spawn (child_process.js:367:9)
at Object.exports.fork (child_process.js:54:10)
at Object.<anonymous> (/Users/Maneesh/Documents/productiveOne/productivity-front-desktopapp/src/nodeBootstrap.js:17:53)
at Module._compile (module.js:431:34)
at Object.Module._extensions..js (module.js:446:10)
at Module.load (module.js:375:32)
at Function.Module._load (module.js:332:12)
at Function.Module.runMain (module.js:483:10)
通过一些其他答案阅读它似乎是一些权限相关的错误,但即使更改我的项目文件夹的权限后,我得到此错误。
其他信息:
- 操作系统 - 苹果
- 节点的Webkit版本 - 0.14.3
任何帮助/建议来解决这个问题将不胜感激。感谢Adavance。
答
这是一个系统问题。尝试以管理员身份运行应用程序。
在Linux/Mac上,你可以使用sudo做到这一点:
sudo node app.js
在Windows中,启动命令行管理员和正常运行的应用程序。
我正在mac机器上运行我的node-webkit应用程序。已经尝试sudo nw。 (启动应用程序的命令)。尽管在Windows上尝试它,看它是否在那里工作。 –