Gagal menemukan variabel lingkungan 'ANDROID_HOME'

131

Saya mencoba membangun proyek ion-android dan saya sudah menginstal Android SDK.

Manajer SDK menginstal paket

Nama proyek saya adalah myApp.I telah berhasil menambahkan platform android ke myApp. Tetapi ketika saya mencoba untuk membangun proyek

~/myApp$ sudo ionic build android

hasilnya adalah

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.

lihat variabel ANDROID_HOME dan 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

Saya telah melihat pertanyaan yang hampir sama pada stack overflow, tetapi tidak ada yang berhasil untuk saya. Apakah ada yang salah dengan konfigurasi android-SDK saya? Bagaimana saya bisa membangun proyek ini?

Hari Krishnan
sumber
2
ANDROID_HOME Anda lebih mirip PATH. Ketika Anda menggema, itu hanya akan kembali /home/hari/Android/Sdk(dengan asumsi itu benar)
OneCricketeer
Lihat jawaban saya di [Pertanyaan Ini] ( stackoverflow.com/questions/35110403/… ) itu akan memperbaikinya untuk Anda
Ramy hakam
Saya harus memasukkan ini setiap kali saya membuka terminal, bagaimana saya bertahan?
Luke Flournoy
@LukeFlournoy Lihat "Hal-hal Priori" (langkah 1 dan 2) dari jawaban ini
Diego Somar

Jawaban:

200

Anda mungkin ingin mengonfirmasi bahwa lingkungan pengembangan Anda telah diatur dengan benar.

Mengutip dari spring.io :

Siapkan lingkungan pengembangan Android

Sebelum Anda dapat membangun aplikasi Android, Anda harus menginstal Android SDK. Menginstal Android SDK juga menginstal AVD Manager, antarmuka pengguna grafis untuk membuat dan mengelola Android Virtual Devices (AVDs).

  1. Dari situs web Android , unduh versi Android SDK yang benar untuk sistem operasi Anda.

  2. Buka zip arsip ke lokasi yang Anda pilih. Misalnya, di Linux atau Mac, Anda dapat meletakkannya di root direktori pengguna Anda. Lihat situs web Pengembang Android untuk rincian instalasi tambahan.

  3. Konfigurasikan ANDROID_HOMEvariabel lingkungan berdasarkan lokasi Android SDK. Selain itu, pertimbangkan untuk menambahkan ANDROID_HOME/tools, dan ANDROID_HOME/platform-toolske PATH Anda.

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

Unduhan SDK Android tidak termasuk platform Android tertentu. Untuk menjalankan kode dalam panduan ini, Anda perlu mengunduh dan menginstal platform SDK terbaru. Anda melakukan ini dengan menggunakan Android SDK dan AVD Manager yang Anda instal di bagian sebelumnya.

  1. Buka jendela Android SDK Manager :

    android

    Catatan: Jika perintah ini tidak membuka Android SDK Manager , maka jalur Anda tidak dikonfigurasi dengan benar.

  2. Pilih kotak centang Alat .

  3. Pilih kotak centang untuk Android SDK terbaru .

  4. Dari folder Ekstra , pilih kotak centang untuk Perpustakaan Dukungan Android .

  5. Klik tombol Instal paket ... untuk menyelesaikan unduhan dan instalasi.

    Catatan: Anda mungkin ingin menginstal semua pembaruan yang tersedia, tetapi perlu diketahui bahwa ini akan memakan waktu lebih lama, karena setiap level API adalah unduhan besar.

Brad W
sumber
1
dalam no 3 (konfigurasikan variabel ANRDOID_HOME): Di file mana seharusnya?
suMi
@ suMi Anda menjalankan perintah ekspor dari terminal Anda berdasarkan OS Anda dan mengubah PATH yang Anda setel ANDROID_HOMEdengan berdasarkan tempat Anda menyimpan SDK. Lihat stackoverflow.com/questions/19986214/… untuk lebih jelasnya.
Brad W
@ suMI Jika Anda ingin perubahan permanen, tambahkan baris-baris itu ke .bashrc Anda jika Anda menggunakan linux atau mac.
brt
jika ada yang lari ke pembangunan masalah ini dari teamcity, Anda perlu membuat parameter env di teamcity untuk ANDROID_HOME.
lawphotog
Apa itu /android-sdk-linux, toolsdan platform-tools? Saya tidak melihat direktori seperti itu di blog saya /opt/android-studio. Studio Android saya berjalan tetapi saya tidak memiliki direktori tersebut.
Dzintars
38

Di Linux

Pertama-tama atur ANDROID_HOME dalam file .bashrc

Jalankan perintah

sudo gedit ~/.bashrc

tetapkan andoid sdk path di mana Anda telah menginstal

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

untuk memuat ulang perintah jalankan file

source ~/.bashrc

Sekarang periksa platform yang diinstal, jalankan perintah

ionic platform

Keluaran

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

jika android sudah terinstal maka perlu menghapus dan menginstal lagi

ionic platform rm android
ionic platform add android

Jika belum diinstal silakan tambahkan platform android

ionic platform add android

Pastikan Anda telah menambahkan platform android tanpa perintah sudo

jika Anda masih mendapatkan kesalahan dalam menambahkan platfrom android seperti berikut

Kesalahan: EACCES: izin ditolak, buka '/home/ubuntu/.cordova/lib/npm_cache/cordova-android/6.0.0/package/package.json'

Silakan buka / home / ubuntu / dan hapus folder .cordova dari sana

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

Sekarang jalankan perintah berikut lagi

ionic platform add android

setelah menambahkan platform dengan sukses, Anda akan dapat membangun andoid di ionic.

Terima kasih

Dineshaw
sumber
14
dari versi 3.0.0 itu ionic cordova platform add android.
Baumi
28

Ini adalah langkah-langkah yang perlu Anda ikuti untuk berhasil mengatur Proyek Ionic Anda untuk bekerja dengan emulator android:

  1. Buat Proyek Ionic: tab appName mulai ionik (untuk tema tab)
  2. cd appName
  3. setup ionic sass
  4. Untuk memulai aplikasi di web: penayangan ion

Untuk menambahkan platform Android:

Hal-hal Priori

Pertama, Anda perlu mengatur variabel lingkungan. Untuk ini, Anda perlu mempertimbangkan 3 file:

1. ~ / .profile (Untuk mengatur variabel setiap terminal terbuka atau komputer melakukan boot up):

// Kode yang harus kamu tambahkan pada akhirnya

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 (untuk mengatur variabel lingkungan):

// Semua konten file

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 :

// Kode yang harus Anda tambahkan pada akhirnya

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

Untuk memuat perubahan di atas yang dibuat ke file Anda perlu menjalankan perintah berikut:

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

Posteori Things

1. Tambahkan platform: platform ionik tambahkan android (Perhatikan bahwa Anda perlu menjalankan perintah ini tanpa sudo )

2. Jika Anda masih mendapatkan kesalahan dalam perintah di atas maka lakukan hal berikut: (di sini 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. Untuk menjalankan aplikasi di emulator android Anda: ionic run android

Terima kasih!

Nikhil Arora
sumber
Terima kasih Nikhil, itu berhasil juga untuk saya. Setelah mencoba banyak hal - ini berhasil dengan langkah-langkah di atas yang Anda berikan :-)
Rajeev Jayaswal
Saya akhirnya mengalami masalah 'login loop' setelah menambahkan variabel Java dan android ke / etc / environment. Untungnya saya bisa menghapus itu dari terminal login (ctrl + alt + F3) dan login normal sekarang.
Harry
8

Bagi mereka yang memiliki edisi SDK portabel di windows, cukup tambahkan 2 jalur berikut ke sistem Anda.

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

Ini berhasil untuk saya.

BoCyrill
sumber
Saya bertanya-tanya mengapa jawaban saya ditolak. Apakah mungkin untuk memiliki alasan tindakan ini?
BoCyrill
2
karena Anda tidak mengatakan cara menambahkannya?
Florian Lauterbach
1
Tepatnya, Anda tidak menentukan cara melakukan proses itu.
Anuj
8

Saya punya masalah ini sebelumnya.
Anda perlu menambahkan sdks\toolsdan sdks\build-toolske jalur lingkungan Anda.

Jalaleddin Hosseini
sumber
5

Jalankan: sudo gedit ~/.bashrc tambahkan

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

dan

source ~/.bashrc
Diego Salguero
sumber
5

11 April 2019

Tidak ada jawaban di atas yang memecahkan masalah saya, jadi saya ingin memasukkan solusi saat ini (per April 2019) untuk orang yang menggunakan Ubuntu 18.04. Ini adalah bagaimana saya menyelesaikan pertanyaan di atas ...

  1. Saya menginstal Android SDK dari situs web, dan memasukkannya ke folder ini:/usr/lib/Android/
  2. Cari di mana SDK diinstal dan versi. Dalam kasus saya itu ada di sini:

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

    Catatan: bahwa saya menggunakan versi 28.0.3, versi Anda mungkin berbeda.

  3. Tambahkan ANDROID_HOMEke jalur lingkungan. Untuk melakukan ini, buka / etc / environment dengan editor teks:

    sudo nano /etc/environment

    Tambahkan baris untuk ANDROID_HOMEversi dan jalur spesifik Anda. Dalam kasus saya itu adalah:

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

  4. Akhirnya, sumber lingkungan yang diperbarui dengan: source /etc/environment

    Konfirmasikan ini dengan mencoba: echo $ANDROID_HOMEdi terminal. Anda harus mendapatkan path dari variabel yang baru Anda buat.

    Satu catatan tambahan tentang sumber, saya harus me-restart komputer saya untuk terminal VScode untuk mengenali perubahan saya. Setelah restart, lingkungan sudah diatur dan saya tidak punya masalah sejak itu.

bsheps
sumber
2

Saya ingin membagikan jawaban yang juga menunjukkan pendekatan menggunakan Android SDK yang disediakan oleh repositori Ubuntu:

Instal Android SDK

sudo apt-get install android-sdk

Ekspor variabel lingkungan

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

Datang ke sini dari google untuk mencari masalah yang sama dan menghabiskan 4 jam untuk mencari tahu apa yang salah. Dan sekarang saya merasa sangat bodoh saat memposting jawaban ini. Dalam kasus saya SDK, JDK, JRE, Ant dan yang lainnya telah diinstal dan bekerja sehari sebelumnya.

Tetapi hanya satu proyek tertentu yang memberi saya masalah ini. Satu ini berada di bawah "C: \ Users \ Nama \ Documents" Lokasi

Segera saya menyadari bahwa saya menjalankan cmd sebagai pengguna normal, segera setelah saya memilih " Run as Administrator " semuanya mulai berfungsi.

Kiat: Selalu pertimbangkan lokasi proyek dengan cermat!

Hitin
sumber
1

Ini menyelesaikan masalah saya. Tambahkan di bawah ini ke jalur sistem Anda

Platform PATH_TO_android \

PATH_TO_android \ platform-tools

PKInd007
sumber
0

Saya mengalami masalah ini di komputer windows7: shutdown komputer saat servis ion sedang berjalan (saya berasumsi itu adalah masalah yang merusak segalanya)

Hapus simpul SEPENUHNYA dan instal ulang semuanya pada salinan simpul baru

DudeOfLayers
sumber
0

Di Windows, Jika Anda menjalankan perintah ini dari terminal kode VS dan Bahkan setelah mengatur semua variabel lingkungan (iebuild-tools, platform-tools, tools) itu tidak berfungsi mencoba menjalankan perintah yang sama dari terminal cmd eksternal. Dalam kasus saya bahkan setelah memulai terminal kode VS baru, itu tidak dapat mengambil jalur Lingkungan yang diperbarui.

Ini bekerja ketika saya menjalankan perintah yang sama dari Windows cmd.

himanshu setia
sumber
0

Untuk mengatur lingkungan ANDROID_HOME di ubuntu 20.04, kunjungi snap store Ubuntu dan instal Android studio lalu buka

vim $HOME/.bashrc

Dan atur variabel lingkungan sebagai berikut:

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}

Dengan versi terbaru Android studio, ganti ANDROID_HOME dengan ANDROID_SDK_ROOT jika tidak, build akan mengeluh bahwa ANDROID_HOME sudah tidak digunakan lagi.

Hamfri
sumber