Ionic 添加平台时出现 EACCES 错误

11
无论何时我使用 ionic platform add [platformname] 命令,都会出现以下错误:

Error: spawn EACCES
at exports._errnoException (util.js:746:11)
at ChildProcess.spawn (child_process.js:1155:11)
at Object.exports.spawn (child_process.js:988:9)
at Object.exports.spawn (/usr/local/lib/node_modules/cordova/node_modules/cordova- lib/src/cordova/superspawn.js:100:31)
at runScriptViaChildProcessSpawn (/usr/local/lib/node_modules/cordova/node_modules/cordova-
lib/src/hooks/HooksRunner.js:188:23)
at runScript (/usr/local/lib/node_modules/cordova/node_modules/cordova- lib/src/hooks/HooksRunner.js:131:16)
at /usr/local/lib/node_modules/cordova/node_modules/cordova- lib/src/hooks/HooksRunner.js:114:20
at _fulfilled (/usr/local/lib/node_modules/cordova/node_modules/q/q.js:787:54)
at self.promiseDispatch.done (/usr/local/lib/node_modules/cordova/node_modules/q/q.js:816:30)
at Promise.promise.promiseDispatch (/usr/local/lib/node_modules/cordova/node_modules/q/q.js:749:13)


请看我的另一个答案这里 - bernardn
2个回答

30

看起来解压的项目权限不正确。这个答案建议更改hooks/after_prepare/010_add_platform_class.js的权限为755。但这个解决方案来自Ioinc论坛,展示了另一种简单的解决方法--只需运行

ionic hooks add

在创建项目并切换到项目目录后,运行以下命令:

ionic platform add ios

将成功而无错误。


这是最好的解决方案,但您必须在特定文件和生成的文件夹后授予权限。因此,在项目根目录中输入“chmod -r 777 *”。 - T.Baba
救命稻草,谢谢你! - Ivan Chernykh

7

当我模拟iOS项目时,遇到了许多错误。经过一天的探索,我和我的老板发现,如果在ionic项目文件夹中应用“chmod -Rv 755”,它会像魔术般地工作!

步骤:

  1. 安装node.js、cordova、ionic、iOS-sim
  2. ionic start "项目名称" "模板"
  3. cd "项目路径"
  4. chmod -Rv 755 *(在项目文件夹范围内更改权限)
  5. ionic platform add iOS(在这种情况下)
  6. ionic build iOS
  7. ionic emulate iOS

然后它就会工作了。

希望这有所帮助。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接