无法找到'ANDROID_HOME“环境变量。无法找到你的'PATH''机器人'命令 [英] Failed to find 'ANDROID_HOME' environment variable. Failed to find 'android' command in your 'PATH'

查看:2407
本文介绍了无法找到'ANDROID_HOME“环境变量。无法找到你的'PATH''机器人'命令的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图建立我的Ubuntu系统上的Andr​​oid默认的Hello World的PhoneGap项目,但我被错误的每一步面对。

短版:


  1. 我不能没有须藤创建的PhoneGap项目(不完全正确 - 见下文)。

  2. 创建使用sudo一个的PhoneGap项目后,我不能没有sudo的构建Android。

  3. 当我键入须藤的PhoneGap构建Android,我失去了我的路径设置,从而导致错误。

  4. 我已经通过包括在线的别名须藤='sudo的包膜的PATH = $ PATH'in.bashrc试图为这最后的问题的修正,如的须藤改变路径 - 为什么,但它不工作。我还添加了ANDROID_HOME和PATH线.bash_profile中,没有成功。

  5. 我认为'机器人'命令实际上是我的道路。

下面是我的.bashrc的最后几行:

 出口PATH =$ HOME / Android设备/工具:$ PATH
出口PATH =$ HOME / Android设备/平台的工具:$ PATH
出口ANDROID_HOME =$ HOME /安卓:$ PATH
别名须藤='sudo的包膜的PATH = $ PATH

我也有在以下〜/ .bash_profile中:

 出口PATH =$ HOME / Android设备/工具:$ PATH
出口PATH =$ HOME / Android设备/平台的工具:$ PATH
出口ANDROID_HOME =$ HOME /安卓:$ PATH

长版:

 格雷戈里@格雷戈里 -  1001PXD:〜/ JavaScript的$ PhoneGap的创建phonetest
错误:EACCES,权限被拒绝'/home/gregory/.config/configstore/update-notifier-cordova.json
您没有访问此文件。    在Object.fs.openSync(fs.js:432:18)
    在Object.fs.readFileSync(fs.js:286:15)
    在Object.create.all.get (/usr/local/lib/node_modules/phonegap/node_modules/cordova/node_modules/update-notifier/node_modules/configstore/index.js:34:26)
    在Object.Configstore (/usr/local/lib/node_modules/phonegap/node_modules/cordova/node_modules/update-notifier/node_modules/configstore/index.js:27:44)
    在新UpdateNotifier (/usr/local/lib/node_modules/phonegap/node_modules/cordova/node_modules/update-notifier/index.js:34:17)
    在module.exports (/usr/local/lib/node_modules/phonegap/node_modules/cordova/node_modules/update-notifier/index.js:123:23)
    在checkForUpdates(/usr/local/lib/node_modules/phonegap/node_modules/cordova/src/cli.js:64:20)
    在CLI(/usr/local/lib/node_modules/phonegap/node_modules/cordova/src/cli.js:114:5)
    在对象<&匿名GT; (在/ usr / local / lib目录/ node_modules / PhoneGap的/ node_modules /科尔多瓦/斌/科尔多瓦:41:1)
    在Module._compile(module.js:456:26)
格雷戈里@格雷戈里 - 1001PXD:〜/ JavaScript的$ sudo的PhoneGap的创建phonetest
[须藤]密码格雷戈里:
创建一个新的项目科尔多瓦。
格雷戈里@格雷戈里 - 1001PXD:〜/ JavaScript的$ CD phonetest /
格雷戈里@格雷戈里 - 1001PXD:〜/ JavaScript的/ phonetest $ sudo的的PhoneGap构建Android
[PhoneGap的]执行'科尔多瓦构建Android......
CP:没有这样的文件或目录:/home/gregory/javascript/phonetest/icon.png
运行命令:/家庭/格雷戈里/ JavaScript的/ phonetest /平台/安卓/科尔多瓦/编译[错误:无法找到'ANDROID_HOME环境变量。尝试设置手动设置它。
无法找到你的'PATH''机器人'命令。尝试更新您的路径,包括路径有效的SDK目录]ERROR建设的平台之一:错误:/家庭/格雷戈里/ JavaScript的/ phonetest /平台/安卓/科尔多瓦/编译:命令失败,退出code 2
您可能没有所需的环境或操作系统来构建这个项目错误:/家庭/格雷戈里/ JavaScript的/ phonetest /平台/安卓/科尔多瓦/编译:命令失败,退出code 2

卜我认为Android的命令是在我的PATH(它制表完成)。

请注意:我没有sudo创建一个项目,如果我删除文件更新通知程序,cordova.json。但它仍然会产生错误,如下。

 格雷戈里@格雷戈里 -  1001PXD:〜/ JavaScript的$ sudo的MV /home/gregory/.config/configstore/update-notifier-cordova.json〜/文档/
格雷戈里@格雷戈里 - 1001PXD:〜/ JavaScript的$ PhoneGap的创建phonetest
创建一个新的项目科尔多瓦。格雷戈里@格雷戈里 - 1001PXD:〜/ JavaScript的$ CD phonetest /
格雷戈里@格雷戈里 - 1001PXD:〜/ JavaScript的/ phonetest $的PhoneGap构建Android
[PhoneGap的]执行'科尔多瓦平台添加--save Android的...
错误:无法获取平台android@~4.1.0
也许这可以是一个连接问题,或平台规​​范不正确。
检查您的连接和平台名称/版本/ URL。
错误:EACCES,打开/home/gregory/.cordova/lib/npm_cache/cordova-android/4.1.1/package/.npmignore[PhoneGap的]执行'科尔多瓦构建Android......
错误:没有平台加入到这个项目中。请使用'科尔多瓦平台添加<平台和GT;`。


解决方案

这是记录在他们的JIRA:的 https://issues.apache.org/jira/browse/CB-10062

检查文件的所有权使用:

LS -al /home/gregory/.config/configstore/update-notifier-cordova.json

如果它是根,你可能要尝试重新安装科尔多瓦 - 以其他方式使用运行所建议的解决方法:

搭配chmod 744 /home/gregory/.config/configstore/update-notifier-cordova.json

I'm trying to build the default Hello World phonegap project for android on my ubuntu system, but I am confronted by errors at every step.

SHORT VERSION:

  1. I cannot create a phonegap project without sudo (not quite true--see below).
  2. After creating a phonegap project with sudo, I cannot build android without sudo.
  3. When I type "sudo phonegap build android", I lose my path settings, resulting in an error.
  4. I have attempted a fix for this last problem by including the line "alias sudo='sudo env PATH=$PATH'" in.bashrc, as suggested in sudo changes PATH - why?, but it doesn't work. I also added ANDROID_HOME and PATH lines to .bash_profile, with no success.
  5. I think the 'android' command actually is in my path.

Here are the last lines of my .bashrc:

export PATH="$HOME/Android/tools:$PATH"
export PATH="$HOME/Android/platform-tools:$PATH"
export ANDROID_HOME="$HOME/Android:$PATH"
alias sudo='sudo env PATH=$PATH'

I also have the following in ~/.bash_profile:

export PATH="$HOME/Android/tools:$PATH"
export PATH="$HOME/Android/platform-tools:$PATH"
export ANDROID_HOME="$HOME/Android:$PATH"

LONG VERSION:

gregory@gregory-1001PXD:~/javascript$ phonegap create phonetest


Error: EACCES, permission denied '/home/gregory/.config/configstore/update-notifier-cordova.json'
You don't have access to this file.

    at Object.fs.openSync (fs.js:432:18)
    at Object.fs.readFileSync (fs.js:286:15)
    at Object.create.all.get (/usr/local/lib/node_modules/phonegap/node_modules/cordova/node_modules/update-notifier/node_modules/configstore/index.js:34:26)
    at Object.Configstore (/usr/local/lib/node_modules/phonegap/node_modules/cordova/node_modules/update-notifier/node_modules/configstore/index.js:27:44)
    at new UpdateNotifier (/usr/local/lib/node_modules/phonegap/node_modules/cordova/node_modules/update-notifier/index.js:34:17)
    at module.exports (/usr/local/lib/node_modules/phonegap/node_modules/cordova/node_modules/update-notifier/index.js:123:23)
    at checkForUpdates (/usr/local/lib/node_modules/phonegap/node_modules/cordova/src/cli.js:64:20)
    at cli (/usr/local/lib/node_modules/phonegap/node_modules/cordova/src/cli.js:114:5)
    at Object.<anonymous> (/usr/local/lib/node_modules/phonegap/node_modules/cordova/bin/cordova:41:1)
    at Module._compile (module.js:456:26)


gregory@gregory-1001PXD:~/javascript$ sudo phonegap create phonetest
[sudo] password for gregory: 
Creating a new cordova project.
gregory@gregory-1001PXD:~/javascript$ cd phonetest/
gregory@gregory-1001PXD:~/javascript/phonetest$ sudo phonegap build android
[phonegap] executing 'cordova build android'...
cp: no such file or directory: /home/gregory/javascript/phonetest/icon.png


Running command: /home/gregory/javascript/phonetest/platforms/android/cordova/build 

[Error: Failed to find 'ANDROID_HOME' environment variable. Try setting setting it manually.
Failed to find 'android' command in your 'PATH'. Try update your 'PATH' to include path to valid SDK directory.]

ERROR building one of the platforms: Error: /home/gregory/javascript/phonetest/platforms/android/cordova/build: Command failed with exit code 2
You may not have the required environment or OS to build this project

Error: /home/gregory/javascript/phonetest/platforms/android/cordova/build: Command failed with exit code 2

Bu I think the android command is in my PATH (it tab-completes).

NOTE: I can create a project without sudo if I remove the file update-notifier-cordova.json. But it still produces an error, as follows.

gregory@gregory-1001PXD:~/javascript$ sudo mv /home/gregory/.config/configstore/update-notifier-cordova.json ~/Documents/
gregory@gregory-1001PXD:~/javascript$ phonegap create phonetest
Creating a new cordova project.

gregory@gregory-1001PXD:~/javascript$ cd phonetest/
gregory@gregory-1001PXD:~/javascript/phonetest$ phonegap build android
[phonegap] executing 'cordova platform add --save android'...
Error: Failed to fetch platform android@~4.1.0
Probably this is either a connection problem, or platform spec is incorrect.
Check your connection and platform name/version/URL.
Error: EACCES, open '/home/gregory/.cordova/lib/npm_cache/cordova-android/4.1.1/package/.npmignore'

[phonegap] executing 'cordova build android'...
Error: No platforms added to this project. Please use `cordova platform add <platform>`.

解决方案

This is documented in their JIRA: https://issues.apache.org/jira/browse/CB-10062

Check the ownership of the file using:

ls -al /home/gregory/.config/configstore/update-notifier-cordova.json

If it is root, you may want to try reinstalling cordova - otherwise use the workaround suggested by running:

chmod 744 /home/gregory/.config/configstore/update-notifier-cordova.json

这篇关于无法找到'ANDROID_HOME“环境变量。无法找到你的'PATH''机器人'命令的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆