web-dev-qa-db-ja.com

'Android_HOME'環境変数が見つかりませんでした

私はイオン - Androidプロジェクトを構築しようとしていると私はAndroid SDKをインストールしている。

SDK manager installed packages

私のプロジェクトの名前はmyApp.Iです。myAppにAndroidプラットフォームを追加しました。しかし、私はプロジェクトを構築しようとすると

~/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の設定に問題はありますか?どうやってこのプロジェクトを作れますか?

104
Hari Krishnan

開発環境が正しく設定されていることを確認してください。

spring.io からの引用

Android開発環境をセットアップする

Androidアプリケーションを構築する前に、Android SDKをインストールする必要があります。 Android SDKをインストールすると、Android仮想デバイス(AVD)を作成および管理するためのグラフィカルユーザーインターフェイスであるAVD Managerもインストールされます。

  1. Android Webサイト から、ご使用のオペレーティングシステムに適したバージョンのAndroid SDKをダウンロードします。

  2. 選択した場所にアーカイブを解凍します。たとえば、LinuxまたはMacでは、ユーザーディレクトリのルートに配置できます。インストールの詳細については、 Android Developers Webサイトを参照してください。

  3. Android SDKの場所に基づいてAndroid_HOME環境変数を設定します。さらに、PATHにAndroid_HOME/toolsAndroid_HOME/platform-toolsを追加することを検討してください。

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

Windows

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 Managerを使用します。

  1. Android SDK Manager ウィンドウを開きます。

    Android
    

    注: このコマンドを実行しても Android SDK Manager と表示されない場合、パスは正しく設定されていません。

  2. ツール チェックボックスを選択します。

  3. 最新のAndroid SDK のチェックボックスをオンにします。

  4. Extras フォルダーから、 Android Support Library のチェックボックスを選択します。

  5. パッケージのインストール... ボタンをクリックしてダウンロードとインストールを完了します。

    注: すべての利用可能なアップデートをインストールすることをお勧めしますが、各APIレベルは大きなダウンロードであるため、時間がかかることに注意してください。

154
Brad W

Linuxの場合

まず、.bashrcファイルにAndroid_HOMEを設定します。

実行コマンド

Sudo gedit ~/.bashrc

インストールした場所にandoid sdkパスを設定します。

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 platfromを追加する際にまだエラーが発生する場合

エラー: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を構築することができるでしょう。

ありがとう

31
Dineshaws

これらは、Androidエミュレータで動作するようにIonicプロジェクトを正常に設定するために従う必要があるステップです。

  1. イオンプロジェクトを作成します。ion start appName tabs(tabテーマ用)
  2. cd appName
  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

ポステオリのこと

1 /プラットフォームの追加:イオンプラットフォームのAndroidの追加( Sudo なしでこのコマンドを実行する必要があることに注意してください)

2. 上記のコマンドでまだエラーが発生する場合は、次の手順を実行します。(ここでは、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.

3. あなたのAndroidエミュレータでアプリを実行するには:Ion run Android

ありがとうございます。

24
Nikhil Arora

WindowsでポータブルSDKエディションを使用している場合は、次の2つのパスをシステムに追加するだけです。

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

これは私のために働きました。

8
BoCyrill

私は以前この問題を抱えていました。
あなたは自分の環境パスにsdks\toolssdks\build-toolsを追加する必要があります。

6

実行します:Sudo gedit ~/.bashrc add

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
3
Diego Salguero

同じ問題を探しているGoogleからここに来て、何が間違っている可能性があるかを把握するために4時間を無駄にしました。そして今、私はこの答えを投稿しながら本当にばかげていると感じます。私の場合、SDK、JDK、JRE、Ant、その他すべてがインストールされ、前日に動作していました。

しかし、ただ1つの特定のプロジェクトが私にこの問題を与えていました。これは "C:\ Users\Name\Documents"の下にありました location

" 管理者として実行 "を選択するとすぐに、cmdを通常のユーザーとして実行していることにすぐ気付きました。

ヒント:常にプロジェクトの場所を慎重に検討してください。

1
Hitin

2019年4月11日

上記の答えのどれも私の問題を解決しなかったので、私はUbuntu 18.04を使用している人々のための現在の解決策(2019年4月現在)を含めたかったです。これが私が上の質問を解決した方法です...

  1. 私はウェブサイトからAndroid SDKをインストールしました そしてそれをこのフォルダに入れます:/usr/lib/Android/
  2. SDKがインストールされている場所とバージョンを検索します。私の場合、それはここにありました:

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

    注:私はバージョン28.0.3を使用しています、あなたのバージョンは異なるかもしれません。

  3. 環境パスにAndroid_HOMEを追加します。これを行うには、テキストエディタで/ etc/environmentを開きます。

    Sudo nano /etc/environment

    特定のバージョンとパスにAndroid_HOMEの行を追加します。私の場合は、

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

  4. 最後に、更新された環境を次のように入力します。source /etc/environment

    これを確認するには、端末でecho $Android_HOMEを試してください。新しく作成した変数のパスを取得する必要があります。

    ソースに関するもう1つの注意点は、VScode端末が自分の変更を認識するためにコンピューターを再起動しなければならなかったことです。再起動後、環境が整い、それ以来問題はありませんでした。

0
bsheps

私はwindows 7コンピュータでこの問題を経験しました:イオンサーバーが動作している間のコンピュータのシャットダウン(私はそれがすべてを壊した問題であったと思います)

ノードCOMPLETELYを削除し、新しいノードコピーにすべてを再インストールする

0
DudeOfLayers

Windowsでは、VSコード端末からこのコマンドを実行している場合、すべての環境変数(つまり、build-tools、platform-tools、tools)を設定した後でも、外部cmd端末から同じコマンドを実行しようとしても機能しません私の場合、新しいVSコードターミナルを起動した後でも、更新された環境パスを取得できませんでした。

Windows cmdから同じコマンドを実行すると機能しました。

0
himanshu goyal

これで私の問題は解決した。システムパスに以下を追加してください

PATH_TO_Android \プラットフォーム

PATH_TO_Android\platform-tools

0
PKInd007