获取错误消息错误:使用IONIC Framework生成EACCES

时间:2015-08-11 17:59:16

标签: ionic-framework cross-platform

我正在尝试学习离子交叉平台工具。我有设置所需的示例应用程序ionic serve工作正常,但当我尝试运行sudo ionic build androidsudo ionic run/emulate android时,它返回错误消息。

Error: spawn EACCES
    at exports._errnoException (util.js:746:11)
    at ChildProcess.spawn (child_process.js:1162:11)
    at Object.exports.spawn (child_process.js:995:9)
    at Object.exports.spawn (/usr/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/superspawn.js:103:31)
    at runScriptViaChildProcessSpawn (/usr/lib/node_modules/cordova/node_modules/cordova-lib/src/hooks/HooksRunner.js:189:23)
    at runScript (/usr/lib/node_modules/cordova/node_modules/cordova-lib/src/hooks/HooksRunner.js:132:16)
    at /usr/lib/node_modules/cordova/node_modules/cordova-lib/src/hooks/HooksRunner.js:115:20
    at _fulfilled (/usr/lib/node_modules/cordova/node_modules/q/q.js:787:54)
    at self.promiseDispatch.done (/usr/lib/node_modules/cordova/node_modules/q/q.js:816:30)
    at Promise.promise.promiseDispatch (/usr/lib/node_modules/cordova/node_modules/q/q.js:749:13)

我无法理解其含义是什么。我有谷歌这个东西,但在应用所有这些解决方案后我得到了相同的错误。如果有人能告诉我出了什么问题,我将非常感激。

7 个答案:

答案 0 :(得分:34)

问题在于命令010_add_platform_class.js缺少执行权限。

您可以使用chmod +x hooks/after_prepare/010_add_platform_class.js授予执行权限。

我在以下链接的Ionic框架论坛上找到了这个解决方案。 http://forum.ionicframework.com/t/how-to-fix-this-error-spawn-eacces/20490/6

答案 1 :(得分:4)

成功上班

chmod +x hooks/after_prepare/010_add_platform_class.js

答案 2 :(得分:4)

首先尝试为hooks文件夹(010_add_platform_class.js)中的一个文件提供执行权限,您可以使用以下命令:

chmod +x hooks/after_prepare/010_add_platform_class.js

如果不起作用,请通过以下方式更改sdk文件夹中完整文件的权限:

chmod +x -R /home/username/Android/Sdk

如果您单独安装了gradle,请同时授予该文件夹的权限:

chmod +x -R /home/username/Android/gradle-2.3

答案 3 :(得分:3)

如果其他修复无效,您可以尝试SELECT m.Id ,m.Latest_rating ,MAX(CASE WHEN t.RateChangeNum = 1 THEN t.rating END) as first_rating ,MAX(CASE WHEN t.RateChangeNum = 1 THEN t.MinRatingChangeDate END) as first_rating_change_date ,MAX(CASE WHEN t.RateChangeNum = 2 THEN t.rating END) as first_rating ,MAX(CASE WHEN t.RateChangeNum = 2 THEN t.MinRatingChangeDate END) as first_rating_change_date FROM main m INNER JOIN ( SELECT ID ,rating ,MIN(rating_change_date) as MinRatingChangeDate ,ROW_NUMBER() OVER (PARTITION BY ID ORDER BY MIN(rating_change_date)) as RateChangeNum FROM main_audit a GROUP BY ID ,rating ) t ON m.Id = t.ID GROUP BY m.Id ,m.Latest_rating

答案 4 :(得分:2)

虽然给定的解决方案确实让我更进一步,但还需要为android sdk添加执行权限。

one
, 
two

请参阅Error: spawn EACCES when trying to build Ionic app in Ubuntu 15.10

答案 5 :(得分:1)

我试过这个,它正在工作

      chmod +x hooks/after_prepare/010_add_platform_class.js

答案 6 :(得分:-1)

尝试在您的应用文件夹中运行此功能:

  • ionic hooks add