当我执行“cordova platform add android”时,命令返回:
错误:/Users/brieuc/.cordova/lib/android/cordova/3.6.4/bin/create:命令失败,退出代码为EACCES 在ChildProcess.whenDone(/usr/local/lib/node_modules/cordova/node_modules/cordova-lib/src/cordova/superspawn.js:135:23) 在ChildProcess.emit(events.js:95:17) 在Process.ChildProcess._handle.onexit(child_process.js:818:12)
我已经读过这可能是一个许可问题所以我试图使用“sudo cordova platform add android”但是返回了同样的错误。
我还尝试在项目文件夹和平台文件夹中使用chmod 777。
我尝试删除平台文件夹,重新创建文件夹,然后返回相同的错误。
为了您的信息,命令“java”,“ant”,“cordova”,“npm”都可以识别。
我唯一的猜测是我的SDK路径错误。
这就是我所做的:
(我在Mac Yosemite上获取信息)
我下载了独立SDK工具。
我创建了一个文件夹/ Development / Android并添加了解压缩的下载文件夹(android-sdk-macosx)。
有关您的信息,“platforms”文件夹为空。
我在/ etc / paths中添加了/ Development / Android / android-sdk-macosx / tools
的路径我不确定它应该在这里,任何提示或解决方案都会受到赞赏。
答案 0 :(得分:4)
我认为问题不在你的项目上。问题似乎在
/Users/brieuc/.cordova/lib/android/cordova/3.6.4/bin/create
没有必要的执行权限。尝试对该文件夹应用类似此命令的内容
chmod -R 777 /Users/brieuc/.cordova/lib/android/cordova/3.6.4/bin
它应该赋予它所有权利,从而让创建来执行。
答案 1 :(得分:2)
@Brieuc这是解决新问题的方法。
您需要在家中的.profile文件中指定Android SDK路径。
在终端,
sudo nano ~/.profile
然后在最后添加这些行,保存并关闭.profile。 (您的Android SDK和ANT可能有不同的路径。现在可能没有必要为您设置ANT路径。)
export ANT_HOME=/usr/share/ant
export ANDROID_HOME=/home/sagun/bin/android-sdk
export PATH=$PATH:$ANT_HOME/bin:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools
现在在终端,您必须通知操作系统您对.profile
所做的更改source ~/.profile
如果没有,请重启linux
现在,您可能仍会遇到一些权限问题,因为导航到您的android-sdk / tools然后输入
chmod +x android
希望这可以帮助你:)