Không thể tìm thấy biến môi trường 'ANDROID_HOME'


131

Tôi đang cố gắng xây dựng một dự án ionic-android và tôi đã cài đặt sdk android.

Trình quản lý SDK đã cài đặt gói

Tên dự án của tôi là myApp. Tôi đã thêm thành công nền tảng Android vào myApp. Nhưng khi tôi cố gắng xây dựng dự án

~/myApp$ sudo ionic build android

kết quả là

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.

xem biến ANDROID_HOME và 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

Tôi đã thấy hầu hết các loại câu hỏi tương tự trên stack stack, nhưng không có câu hỏi nào phù hợp với tôi. Có bất cứ điều gì sai với cấu hình android-sdk của tôi? Làm thế nào tôi có thể xây dựng dự án này?


2
ANDROID_HOME của bạn trông giống như một ĐƯỜNG. Khi bạn lặp lại, nó chỉ nên quay lại /home/hari/Android/Sdk(giả sử điều đó đúng)
OneCricketeer

Xem câu trả lời của tôi trên [Câu hỏi này] ( stackoverflow.com/questions353110403/iêu ) nó sẽ sửa nó cho bạn
Ramy hakam

Tôi phải nhập cái này mỗi khi tôi mở terminal, làm thế nào để tôi duy trì nó?
Luke Flournoy

@LukeFlournoy Xem "Những điều Priori" (bước 1 và 2) của câu trả lời này
Diego Somar

Câu trả lời:


199

Bạn có thể muốn xác nhận rằng môi trường phát triển của bạn đã được đặt chính xác.

Trích dẫn từ spring.io :

Thiết lập môi trường phát triển Android

Trước khi bạn có thể xây dựng các ứng dụng Android, bạn phải cài đặt SDK Android. Cài đặt SDK Android cũng cài đặt Trình quản lý AVD, giao diện người dùng đồ họa để tạo và quản lý Thiết bị ảo Android (AVD).

  1. Từ trang web Android , tải xuống phiên bản chính xác của SDK Android cho hệ điều hành của bạn.

  2. Giải nén tệp lưu trữ đến một vị trí bạn chọn. Ví dụ: trên Linux hoặc Mac, bạn có thể đặt nó trong thư mục gốc của thư mục người dùng. Xem trang web Nhà phát triển Android để biết thêm chi tiết cài đặt.

  3. Định cấu hình ANDROID_HOMEbiến môi trường dựa trên vị trí của SDK Android. Ngoài ra, hãy xem xét thêm ANDROID_HOME/toolsANDROID_HOME/platform-toolsvào ĐƯỜNG của bạn.

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

các cửa sổ

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

Tải xuống SDK Android không bao gồm các nền tảng Android cụ thể. Để chạy mã trong hướng dẫn này, bạn cần tải xuống và cài đặt nền tảng SDK mới nhất. Bạn làm điều này bằng cách sử dụng SDK Android và AVD Manager mà bạn đã cài đặt trong phần trước.

  1. Mở cửa sổ Trình quản lý SDK Android :

    android

    Lưu ý: Nếu lệnh này không mở Trình quản lý SDK Android , thì đường dẫn của bạn không được cấu hình đúng.

  2. Chọn hộp kiểm Công cụ .

  3. Chọn hộp kiểm cho SDK Android mới nhất .

  4. Từ thư mục Extras , chọn hộp kiểm cho Thư viện hỗ trợ Android .

  5. Nhấp vào nút Cài đặt gói ... để hoàn tất tải xuống và cài đặt.

    Lưu ý: Bạn có thể muốn cài đặt tất cả các bản cập nhật có sẵn, nhưng lưu ý rằng sẽ mất nhiều thời gian hơn, vì mỗi cấp API là một lượt tải xuống lớn.


1
trong số 3 (cấu hình biến ANRDOID_HOME): Đây phải là tệp nào?
suMi

@suMi bạn chạy lệnh xuất từ ​​thiết bị đầu cuối của bạn dựa trên hệ điều hành của bạn và thay đổi PATH mà bạn đặt ANDROID_HOMEbằng với dựa trên nơi bạn đã lưu SDK. Xem stackoverflow.com/questions/19986214/ cấp để biết thêm chi tiết.
Brad W

@suMI Nếu bạn muốn các thay đổi vĩnh viễn, hãy thêm các dòng đó vào .bashrc nếu bạn đang dùng linux hoặc mac.
brt

nếu bất cứ ai gặp phải vấn đề này khi xây dựng teamcity, bạn cần tạo các tham số env trên teamcity cho ANDROID_HOME.
lawph photo

Đó là gì /android-sdk-linux, toolsplatform-tools? Tôi không thấy các thư mục như vậy trong của tôi /opt/android-studio. Android Studio của tôi đang chạy nhưng tôi không có các thư mục đó.
Dzintars

38

Trong Linux

Trước hết, đặt ANDROID_HOME trong tệp .bashrc

Chạy lệnh

sudo gedit ~/.bashrc

đặt đường dẫn sdk andoid nơi bạn đã cài đặt

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

để tải lại lệnh chạy tập tin

source ~/.bashrc

Bây giờ hãy kiểm tra nền tảng đã cài đặt, chạy lệnh

ionic platform

Đầu ra

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

Nếu Android đã được cài đặt thì cần phải gỡ bỏ và cài đặt lại

ionic platform rm android
ionic platform add android

Nếu chưa cài đặt, vui lòng thêm nền tảng Android

ionic platform add android

Hãy chắc chắn rằng bạn đã thêm nền tảng Android mà không cần lệnh sudo

nếu bạn vẫn gặp lỗi khi thêm platfrom Android như sau

Lỗi: EACCES: quyền bị từ chối, mở '/home/ubfox/.cordova/lib/npm_cache/cordova-android/6.0.0/package/package.json'

Vui lòng truy cập / home / ubfox / và xóa thư mục .cordova khỏi đó

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

Bây giờ chạy lại lệnh sau

ionic platform add android

Sau khi thêm nền tảng thành công, bạn sẽ có thể xây dựng andoid trong ion.

Cảm ơn


14
từ phiên bản 3.0.0 ionic cordova platform add android.
Baumi

28

Đây là các bước bạn cần thực hiện để thiết lập thành công Dự án Ionic của mình để hoạt động với trình giả lập Android:

  1. Tạo một dự án Ionic: các tab appName bắt đầu (cho chủ đề tab)
  2. tên ứng dụng cd
  3. thiết lập ion
  4. Để bắt đầu ứng dụng trên web: ionic phục vụ

Để thêm nền tảng Android:

Những điều Priori

Đầu tiên bạn cần thiết lập các biến môi trường. Đối với điều này, bạn cần xem xét 3 tập tin:

1. ~ / .profile (Để thiết lập các biến mỗi khi thiết bị đầu cuối mở hoặc máy tính khởi động):

// Mã mà bạn cần thêm vào cuối cùng

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 / môi trường (để đặt các biến môi trường):

// Tất cả nội dung của tệp

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 / hồ sơ :

// Mã mà bạn cần thêm vào cuối cùng

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

Để tải các thay đổi ở trên vào tệp, bạn cần chạy lệnh sau:

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

Mọi thứ

1. Thêm nền tảng: Nền tảng ionic thêm Android (Lưu ý rằng bạn cần chạy lệnh này mà không cần sudo )

2. Nếu bạn vẫn gặp lỗi trong lệnh trên thì hãy làm như sau: (tại đây 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. Để chạy ứng dụng trong trình giả lập Android của bạn: ionic chạy android

Cảm ơn!


Cảm ơn Nikhil, nó cũng làm việc cho tôi. Sau khi thử rất nhiều thứ - nó đã hoạt động với những bước trên mà bạn đã cung cấp :-)
Rajeev Jayaswal

Cuối cùng tôi đã gặp sự cố 'vòng lặp đăng nhập' sau khi thêm các biến Java và Android vào môi trường / etc /. May mắn thay, tôi đã có thể loại bỏ nó khỏi đăng nhập thiết bị đầu cuối (ctrl + alt + F3) và đăng nhập là bình thường.
Harry

8

Đối với những người có phiên bản SDK di động trên windows, chỉ cần thêm 2 đường dẫn sau vào hệ thống của bạn.

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

Điều này làm việc cho tôi.


Tôi tự hỏi tại sao câu trả lời của tôi đã được bỏ phiếu xuống. Có thể có lý do của hành động này?
BoCyrill

2
bởi vì bạn không nói làm thế nào để thêm chúng?
Florian Lauterbach

1
Chính xác, bạn đã không chỉ định cách thực hiện quy trình đó.
Anuj

8

Tôi đã có vấn đề này trước đây.
Bạn cần thêm sdks\toolssdks\build-toolsvào đường dẫn môi trường của bạn.


5

Thực thi: sudo gedit ~/.bashrc thêm

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

5

Ngày 11 tháng 4 năm 2019

Không có câu trả lời nào ở trên giải quyết được vấn đề của tôi vì vậy tôi muốn đưa vào một giải pháp hiện tại (kể từ tháng 4 năm 2019) cho những người sử dụng Ubuntu 18.04. Đây là cách tôi giải quyết câu hỏi trên ...

  1. Tôi đã cài đặt SDK Android từ trang web và đặt nó vào thư mục này:/usr/lib/Android/
  2. Tìm kiếm nơi cài đặt SDK và phiên bản. Trong trường hợp của tôi, nó đã ở đây:

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

    Lưu ý: rằng tôi đang sử dụng phiên bản 28.0.3, phiên bản của bạn có thể khác.

  3. Thêm vào ANDROID_HOMEđường dẫn môi trường. Để thực hiện việc này, hãy mở / etc / môi trường bằng trình soạn thảo văn bản:

    sudo nano /etc/environment

    Thêm một dòng cho ANDROID_HOMEphiên bản và đường dẫn cụ thể của bạn. Trong trường hợp của tôi, đó là:

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

  4. Cuối cùng, nguồn môi trường cập nhật với: source /etc/environment

    Xác nhận điều này bằng cách thử: echo $ANDROID_HOMEtrong thiết bị đầu cuối. Bạn sẽ nhận được đường dẫn của biến mới được tạo của bạn.

    Ngoài ra, một lưu ý nữa về việc tìm nguồn cung ứng, tôi đã phải khởi động lại máy tính của mình cho thiết bị đầu cuối VScode để nhận ra những thay đổi của tôi. Sau khi khởi động lại, môi trường đã được thiết lập và tôi không gặp vấn đề gì kể từ đó.


2

Tôi muốn chia sẻ một câu trả lời cũng thể hiện cách tiếp cận bằng cách sử dụng SDK Android được cung cấp bởi kho lưu trữ Ubuntu:

Cài đặt SDK Android

sudo apt-get install android-sdk

Xuất biến môi trường

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

1

Đến đây từ google tìm kiếm cùng một vấn đề và lãng phí 4 giờ để tìm ra điều gì có thể sai. Và bây giờ tôi cảm thấy thực sự ngu ngốc khi đăng câu trả lời này. Trong trường hợp của tôi SDK, JDK, JRE, Ant và mọi thứ khác đã được cài đặt và hoạt động một ngày trước đó.

Nhưng chỉ một dự án cụ thể đã cho tôi vấn đề này. Cái này là dưới "C: \ Users \ Tên \ Documents" vị trí

Ngay sau đó tôi nhận ra rằng tôi đang chạy cmd như một người dùng bình thường, ngay khi tôi chọn " Chạy với tư cách quản trị viên ", mọi thứ bắt đầu hoạt động.

Mẹo: Luôn xem xét vị trí dự án một cách cẩn thận!


1

Điều này đã giải quyết vấn đề của tôi. Thêm bên dưới vào đường dẫn hệ thống của bạn

Nền tảng PATH_TO_android \

PATH_TO_android \ công cụ nền tảng


0

Tôi đã gặp sự cố này trên máy tính windows7: máy tính tắt trong khi phục vụ ion đang chạy (tôi cho rằng đó là sự cố làm hỏng mọi thứ)

Xóa nút HOÀN TOÀN và cài đặt lại mọi thứ trên bản sao nút mới


0

Trong Windows, nếu bạn đang chạy lệnh này từ thiết bị đầu cuối mã VS và Ngay cả sau khi thiết lập tất cả các biến môi trường (công cụ iebuild, công cụ nền tảng, công cụ) thì nó không hoạt động khi thử chạy cùng một lệnh từ thiết bị đầu cuối cmd bên ngoài. Trong trường hợp của tôi ngay cả sau khi bắt đầu một thiết bị đầu cuối mã VS mới, nó không thể thực hiện đường dẫn Môi trường được cập nhật.

Nó hoạt động khi tôi chạy cùng một lệnh từ Windows cmd.


0

Để đặt môi trường ANDROID_HOME trên Ubuntu 20.04, hãy truy cập cửa hàng snap của Ubuntu và cài đặt studio Android và sau đó mở

vim $HOME/.bashrc

Và đặt các biến môi trường như sau:

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}

Với các phiên bản gần đây của studio Android, thay thế ANDROID_HOME bằng ANDROID_SDK_ROOT nếu không các bản dựng sẽ phàn nàn rằng ANDROID_HOME không được dùng nữa.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.