找不到“ ANDROID_home”环境变量

我正在尝试建立一个离子机器人项目,我已经安装了机器人软盘。

SDK manager installed packages

我的项目名为 myApp。我已经成功地将 android 平台添加到 myApp 中。但是当我试图建立这个项目时

~/myApp$ sudo ionic build android

结果是

Running command: /home/hari/myApp/hooks/after_prepare/010_add_platform_class.js /home/hari/myApp
add to body class: platform-android
ERROR building one of the platforms: 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.
You may not have the required environment or OS to build this project
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.

参见 ANDROID _ HOME 和 PATH 变量

echo $ANDROID_HOME
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/hari/Android/Sdk


echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/hari/Android/Sdk/tools:/home/hari/Android/Sdk/platform-tools:/usr/local/bin:/opt/gradle/bin

我见过几乎相同类型的关于堆栈溢出的问题,但没有一个对我有用。我的 android-sdk 配置有什么问题吗?我怎样才能建立这个项目?

358695 次浏览

您可能需要确认您的开发环境已经正确设置。

引自 Sprio:

设置 Android 开发环境

在构建 Android 应用程序之前,必须安装 安装 Android SDK 还可以安装 AVD 管理器, 创建和管理 Android Virtual 的图形用户界面 器件(AVD)。

  1. Android 网站下载 为您的操作系统提供正确的 Android SDK 版本。

  2. 将存档解压缩到您选择的位置。例如,在 Linux 或 Mac 上,可以将它放在用户目录的根目录中。你看 安卓系统 开发商 网站提供更多安装详情。

  3. 根据 Android SDK 的位置来配置 ANDROID_HOME环境变量 ANDROID_HOME/toolsANDROID_HOME/platform-tools到你的 PATH

Mac OS X

export ANDROID_HOME=/<installation location>/android-sdk-macosx
export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

Linux

export ANDROID_HOME=/<installation location>/android-sdk-linux
export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

窗户

set ANDROID_HOME=C:\<installation location>\android-sdk-windows
set PATH=%PATH%;%ANDROID_HOME%\tools;%ANDROID_HOME%\platform-tools

Android SDK 下载不包括特定的 Android 平台。 要运行本指南中的代码,您需要下载并安装 最新的 SDK 平台。您可以通过使用 Android SDK 和 AVD 来实现这一点 您在上一节中安装的管理器。

  1. 打开 Android SDK 管理器窗口:

    android
    

    注意: 如果这个命令没有打开 Android SDK 管理器, 那么您的路径配置不正确

  2. 选择 工具复选框。

  3. 选择 最新的 Android SDK的复选框。

  4. 临时演员文件夹中,选择 Android 支援库的复选框。

  5. 单击 安装软件包。按钮完成下载和安装。

    注意: 您可能希望安装所有可用的更新,但是 意识到这将花费更长的时间,因为每个 API 级别都是一个大型下载

对于那些在 Windows 上有可移植 SDK 版本的用户,只需将以下2条路径添加到系统中即可。

F:\ADT_SDK\sdk\platforms
F:\ADT_SDK\sdk\platform-tools

这招对我很管用。

在 Linux 上

首先在. bashrc 文件中设置 ANDROID _ HOME

运行命令

sudo gedit ~/.bashrc

设置您已安装的 andoidsdk 路径

export ANDROID_HOME=/opt/android-sdk-linux
export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

重新加载文件运行命令

source ~/.bashrc

现在检查已安装的平台,运行命令

ionic platform

输出

Installed platforms:
android 6.0.0
Available platforms:
amazon-fireos ~3.6.3 (deprecated)
blackberry10 ~3.8.0
browser ~4.1.0
firefoxos ~3.6.3
ubuntu ~4.3.4
webos ~3.7.0

如果 android 已经安装,那么需要删除并重新安装

ionic platform rm android
ionic platform add android

如果还没有安装,请添加 android 平台

ionic platform add android

请确保添加了没有 sudo 命令的 android 平台

如果你在添加 android 平台时仍然出现错误

错误: EACCES: 权限拒绝,打开’/home/ubuntu/. cordova/lib/npm _ cache/cordova-android/6.0.0/package/package.json’

请转到/home/ubuntu/并从中删除. cordova 文件夹

cd /home/ubuntu/
sudo rm -r .cordova

现在再次运行以下命令

ionic platform add android

在成功地添加平台之后,您将能够在离子中构建 andoid。

谢谢

以下是你需要遵循的步骤,以成功地设置你的 Ionic 项目与 Android 模拟器一起工作:

  1. 创建一个 Ionic 项目: Ionic start appName 选项卡(用于 tab 主题)
  2. Cd 应用程序名称
  3. 离子装置,离子装置
  4. 在网上启动应用程序: 离子服务

添加 android 平台:

先验事物

首先,您需要设置环境变量。为此,您需要考虑3个文件:

1. ~/. profile (用于在每次终端打开或计算机启动时设置变量) :

//需要在最后追加的代码

set PATH so it includes user's private bin directories
PATH="$HOME/bin:$HOME/.local/bin:$PATH"
export ANDROID_HOME='/home/<user_name>/Android/Sdk' <Path to android SDK>
export PATH=$PATH:$ANDROID_HOME/bin
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/platform-tools

2./etc/Environment (设置环境变量) :

//文件的所有内容

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
JAVA_HOME="/usr/lib/jvm/java-8-oracle"
ANDROID_HOME="/home/<user_name>/Android/Sdk" <Path to android SDK>

3./etc/profile :

//最后需要添加的代码

JAVA_HOME=/usr/lib/jvm/java-8-oracle <Path where Java is installed>
JRE_HOME=$JAVA_HOME/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME
export JRE_HOME
export PATH

要加载对文件所做的上述更改,您需要运行以下命令:

source ~/.profile
source /etc/environment
source /etc/profile

Posteori Things

Add Platform: ionic Platform Add android (注意,您需要在没有 Sudo的情况下运行这个命令)

2. 如果在上面的命令中仍然出现错误,那么执行以下操作: (here appName = helloWorld)

    cd ..
sudo chmod -R 777 helloWorld
cd helloWorld
ionic platform add android
If you are still getting the error then remove ".cordova" folder from the home directory of your PC.

要在你的 android 模拟器中运行应用程序: ionic run android

谢谢!

我在 Windows7电脑上遇到过这个问题: 离子服务器运行时电脑关机(我假设这就是破坏一切的问题)

完全删除节点并在新的节点副本上重新安装所有内容

从谷歌来到这里寻找相同的问题,浪费了4个小时,找出可能是错误的。现在我发布这个答案的时候觉得自己真的很愚蠢。在我的例子中,SDK、 JDK、 JRE、 Ant 和其他所有东西都是在前一天安装并运行的。

但是只有一个特别的项目给了我这个问题。这一个是在 “ C: 用户名称文档”的位置

很快我意识到我正在运行 cmd 作为普通用户,只要我选择“ 以管理员身份运行”一切开始工作。

提示: 始终认真考虑项目位置!

我以前也有这个问题。
您需要将 sdks\toolssdks\build-tools添加到您的环境路径中。

执行: sudo gedit ~/.bashrc添加

JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export JAVA_HOME
PATH=$PATH:$JAVA_HOME
export PATH
export ANDROID_HOME=~/Android/Sdk
export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

还有

source ~/.bashrc

这解决了我的问题。添加以下到您的系统路径

安卓平台

PATH _ TO _ android 平台-工具

2019年4月11日

上面的答案都没有解决我的问题,所以我想包括一个当前的解决方案(截至2019年4月) ,为人们使用 Ubuntu 18.04。这就是我如何解决上面的问题..。

  1. 我从网站上安装了 Android SDK, 并把它放在这个文件夹中: /usr/lib/Android/
  2. 搜索 SDK 的安装位置和版本:

    /usr/lib/Android/Sdk/build-tools/28.0.3

    注意: 我使用的是28.0.3版本,您的版本可能有所不同。

  3. ANDROID_HOME添加到环境路径:

    sudo nano /etc/environment

    为特定的版本和路径为 ANDROID_HOME添加一行。在我的例子中是:

    ANDROID_HOME="/usr/lib/Android/Sdk/build-tools/28.0.3"

  4. 最后,使用: source /etc/environment来源化更新后的环境

    在终端中尝试确认: echo $ANDROID_HOME。您应该得到新创建的变量的路径。

    关于源代码的另一个注意事项是,我确实需要重新启动计算机以便 VScode 终端识别我的更改。在重启之后,环境设置好了,从那以后我就没有任何问题了。

在 Windows 系统中,如果你在 VS 代码终端上运行这个命令,即使在设置了所有的环境变量(例如 build-tools,Platform-tools,tools)之后,在外部 cmd 终端上运行同样的命令也不起作用。 在我的例子中,即使启动了一个新的 VS 代码终端,它也不能使用更新后的 Environment 路径。

当我从 Windowscmd 运行相同的命令时,它工作了。

我想分享一个答案,它也演示了使用 Ubuntu 库提供的 Android SDK 的方法:

安装 Android SDK

sudo apt-get install android-sdk

输出环境变量

export ANDROID_HOME="/usr/lib/android-sdk/"
export PATH="${PATH}:${ANDROID_HOME}tools/:${ANDROID_HOME}platform-tools/"

要在 Ubuntu 20.04上设置 安卓系统环境,请访问 Ubuntu 的快照商店并安装 Android 工作室,然后打开

vim $HOME/.bashrc

并设置环境变量如下:

export ANDROID_HOME=${HOME}/Android/Sdk
export PATH=${ANDROID_HOME}/tools:${PATH}
export PATH=${ANDROID_HOME}/emulator:${PATH}
export PATH=${ANDROID_HOME}/platform-tools:${PATH}

随着最近版本的 Android 工作室取代 安卓系统ANDROID _ SDK _ ROOT否则构建将抱怨 不推荐使用 ANDROID _ HOME。

我在 MAC Catalina 10.15上也遇到了同样的问题。在终端上回显 bash _ profile 时无法识别它,它被临时存储。建议使用。并在其中添加所有环境变量。经过5个小时的尝试,我找到了这个解决方案。希望对某些人有用。

 vi .zprofile
insert(press i)


export ANDROID_HOME=/Users/mypc/Library/Android/sdk
export PATH=$ANDROID_HOME/platform-tools:${PATH}


after adding environment variables press esc
then enter :wq!
try echo $ANDROID_HOME in new tab(it will not be empty) path will be
printed

花了几个小时没有睡觉搜索一切来安装 apk 在我的 android 设备上进行调试,但无法安装的 apk 由于 ADP ENONET

"adb reverse": spawnSync Users/shanu/Library/Android/sdk/platform-tools/adb ENOENT

解决方案非常简单,字面上,我已经添加到 .bash_profile, .zshrc, environment, ~/.profile等变量,几乎尝试了每一个解决方案,但不能解决它。

这个错误很小。

而不是像这样(正确)在我的 bash _ profile 文件中添加。

   export ANDROID_HOME=/Users/shanu/Library/Android/sdk
export PATH=${PATH}:/Users/shanu/Library/Android/emulator
export PATH=${PATH}:/Users/shanu/Library/Android/sdk/tools
export PATH=${PATH}:/Users/shanu/Library/Android/sdk/tools/bin
export PATH=${PATH}:/Users/shanu/Library/Android/sdk/platform-tools

我加了这样的东西,这在我的情况下是错误的。

  export ANDROID_HOME=Users/shanu/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/emulator
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/tools/bin
export PATH=$PATH:$ANDROID_HOME/platform-tools

也许会有帮助: 在 package.json内部像这样为 yarn android命令添加

"android": "source ~/.bash_profile&&react-native run-android"

在按照其他答案中的建议更新了路径和环境变量之后,有时只需重新启动计算机即可。我花了24个多小时才走投无路,重新开始。

我也面临同样的问题,我用这种方式解决。

打开终端

Cd 到 eclipse.app 所在的文件夹,例如 cd /Users/Shared/eclipse/jee-2020-09

类型 open Eclipse.app/

Eclipse 现在将打开,也将能够访问系统环境变量。

使用以下代码检查:

System.getenv().forEach((k, v) -> {
System.out.println("ENV : " + k + ":" + v);
});