'ANDROID_HOME' पर्यावरण चर खोजने में विफल


131

मैं एक आयनिक-एंड्रॉइड प्रोजेक्ट बनाने की कोशिश कर रहा हूं और मेरे पास एंड्रॉइड एसडीके स्थापित है।

एसडीके प्रबंधक ने संकुल स्थापित किया

मेरे प्रोजेक्ट का नाम 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

मैंने स्टैक ओवरफ्लो पर लगभग एक ही तरह के सवाल देखे हैं, लेकिन कोई भी मेरे लिए काम नहीं करता है। क्या मेरे एंड्रॉइड-एसडीके कॉन्फ़िगरेशन में कुछ गड़बड़ है? मैं इस परियोजना का निर्माण कैसे कर सकता हूं?


2
आपका ANDROID_HOME एक PATH की तरह दिखता है। जब आप /home/hari/Android/Sdk
गूँजते हैं

[मेरा यह सवाल] ( stackoverflow.com/questions/35110403/… ) पर मेरा जवाब देखें, यह आपके लिए इसे ठीक कर देगा
रामी हकम

मुझे हर बार यह दर्ज करना होगा कि मैं टर्मिनल खोलता हूं, मैं इसे कैसे जारी रख सकता हूं?
ल्यूक फ्लौरनॉय 20

जवाबों:


200

आप इस बात की पुष्टि करना चाहते हैं कि आपके विकास का वातावरण सही ढंग से निर्धारित किया गया है।

से हवाला देते हुए spring.io :

Android विकास वातावरण सेट अप करें

Android एप्लिकेशन बनाने से पहले, आपको Android SDK इंस्टॉल करना होगा। एंड्रॉइड एसडीके को इंस्टॉल करना एवीडी मैनेजर भी स्थापित करता है, जो एंड्रॉइड वर्चुअल डिवाइसेस (एवीडी) को बनाने और प्रबंधित करने के लिए एक ग्राफिकल यूजर इंटरफेस है।

  1. से एंड्रॉयड वेब साइट , अपने ऑपरेटिंग सिस्टम के लिए Android SDK का सही संस्करण डाउनलोड।

  2. संग्रह को अपने चयन के स्थान पर अनज़िप करें। उदाहरण के लिए, लिनक्स या मैक पर, आप इसे अपने उपयोगकर्ता निर्देशिका की जड़ में रख सकते हैं। देखें Android डेवलपर अतिरिक्त स्थापना जानकारी के लिए वेब साइट।

  3. ANDROID_HOMEएंड्रॉइड एसडीके के स्थान के आधार पर पर्यावरण चर को कॉन्फ़िगर करें । इसके अतिरिक्त, जोड़ने ANDROID_HOME/toolsऔर ANDROID_HOME/platform-toolsअपने पथ पर विचार करें।

मैक ओएस एक्स

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

लिनक्स

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

एंड्रॉइड एसडीके डाउनलोड में विशिष्ट एंड्रॉइड प्लेटफ़ॉर्म शामिल नहीं हैं। इस गाइड में कोड को चलाने के लिए, आपको नवीनतम एसडीके प्लेटफॉर्म डाउनलोड और इंस्टॉल करना होगा। आप इसे एंड्रॉइड एसडीके और एवीडी मैनेजर का उपयोग करके करते हैं जो आपने पिछले अनुभाग में स्थापित किया था।

  1. ओपन एंड्रॉयड एसडीके प्रबंधक खिड़की:

    android

    नोट: यदि यह कमांड एंड्रॉइड एसडीके मैनेजर नहीं खोलता है , तो आपका पथ सही तरीके से कॉन्फ़िगर नहीं किया गया है।

  2. का चयन करें उपकरण चेकबॉक्स।

  3. नवीनतम Android SDK के लिए चेकबॉक्स चुनें ।

  4. से अतिरिक्त फ़ोल्डर, के चेकबॉक्स का चयन Android समर्थन लाइब्रेरी

  5. डाउनलोड और इंस्टॉलेशन को पूरा करने के लिए इंस्टाल पैकेज ... बटन पर क्लिक करें

    नोट: आप सभी उपलब्ध अद्यतनों को स्थापित करना चाह सकते हैं, लेकिन ध्यान रखें कि इसमें अधिक समय लगेगा, क्योंकि प्रत्येक एपीआई स्तर एक बड़ा डाउनलोड है।


1
3 में (ANRDOID_HOME चर को कॉन्फ़िगर करें): यह किस फ़ाइल में होना चाहिए?
suMi

@suMi आप अपने OS के आधार पर अपने टर्मिनल से निर्यात कमांड चलाते हैं और आपके द्वारा निर्धारित पैट को बदल देते हैं ANDROID_HOME SDK को सहेजे जाने के आधार पर । अधिक जानकारी के लिए stackoverflow.com/questions/19986214/… देखें ।
ब्रैड डब्ल्यू

@suMI यदि आप बदलावों को स्थायी चाहते हैं, तो उन पंक्तियों को अपने .bashrc में जोड़ें यदि आप linux या mac पर हैं।
brt

अगर कोई भी टीमसिटी से इस समस्या के निर्माण में भाग ले रहा है, तो आपको ANDROID_HOME के ​​लिए teamcity पर env पैरामीटर बनाने की आवश्यकता है।
लॉफोटॉग

वह क्या है /android-sdk-linux,tools और platform-tools? मैं अपने में ऐसी निर्देशिका नहीं देखता हूं /opt/android-studio। मेरा Android स्टूडियो चल रहा है लेकिन मेरे पास कोई निर्देशिका नहीं है।
Dzintars

38

लिनक्स में

सबसे पहले ANDROID_HOME इन .bashrc फ़ाइल को सेट करें

चलाने के आदेश

sudo gedit ~/.bashrc

सेट करें और जहाँ आप स्थापित किया है एसडीके पथ

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 पहले से ही install है तो फिर से remove और install करना होगा

ionic platform rm android
ionic platform add android

यदि पहले से इंस्टॉल नहीं है तो कृपया एंड्रॉइड प्लेटफॉर्म जोड़ें

ionic platform add android

कृपया सुनिश्चित करें कि आपने sudo कमांड के बिना Android प्लेटफ़ॉर्म जोड़ा है

अगर आपको अभी भी निम्नलिखित की तरह android platfrom को जोड़ने में त्रुटि हो रही है

त्रुटि: EACCES: अनुमति अस्वीकृत, '/home/ubuntu/.cordova/lib/npm_cache/cordova-android/6.0.0/package/package.json' खोलें

कृपया / घर / ubuntu / पर जाएँ और वहाँ से .cordova फ़ोल्डर निकालें

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

अब फिर से कमांड का पालन करें

ionic platform add android

प्लेटफ़ॉर्म को सफलतापूर्वक जोड़ने के बाद आप आयनिक का निर्माण कर सकते हैं।

धन्यवाद


14
संस्करण 3.0.0 से यह है ionic cordova platform add android
बाउमी

28

ये वे चरण हैं, जिन्हें आपको एंड्रॉइड एमुलेटर के साथ काम करने के लिए सफलतापूर्वक अपने ईओण प्रोजेक्ट को सेट करने की आवश्यकता है:

  1. आयोनिक प्रोजेक्ट बनाएं: आयनिक स्टार्ट एपनेम टैब (टैब थीम के लिए)
  2. सीडी appName
  3. आयनिक सेटअप sass
  4. वेब पर एप्लिकेशन शुरू करने के लिए: ईओण की सेवा

Android प्लेटफ़ॉर्म जोड़ने के लिए:

प्रियोरी चीजें

सबसे पहले आपको पर्यावरण चर को सेटअप करने की आवश्यकता है। इसके लिए आपको 3 फाइलों पर विचार करने की आवश्यकता है:

1. ~ / .प्रोफाइल (हर बार टर्मिनल खोलने या कंप्यूटर बूट अप करने के लिए चर सेट करने के लिए):

// कोड जिसे आपको आखिरी में जोड़ना होगा

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. आदि / पर्यावरण (पर्यावरण चर सेट करने के लिए):

// फाइल का सारा कंटेंट

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. / आदि / प्रोफ़ाइल :

// कोड जिसे आपको आखिरी में जोड़ना होगा

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. प्लेटफ़ॉर्म जोड़ें: आयनिक प्लेटफ़ॉर्म एंड्रॉइड जोड़ें (ध्यान दें कि आपको इस कमांड को 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. अपने एंड्रॉइड एमुलेटर में ऐप को चलाने के लिए: आयनिक रन एंड्रॉइड

धन्यवाद!


धन्यवाद निखिल, इसने मेरे लिए भी काम किया। बहुत सारी चीजों की कोशिश करने के बाद - यह उन चरणों के साथ काम करता है जो आपने दिए थे :-)
राजीव जयसवाल

मैंने Java / android वैरिएबल को / etc / वातावरण में जोड़ने के बाद एक 'लॉगिन लूप' जारी किया। सौभाग्य से मैं इसे टर्मिनल लॉगिन (ctrl + alt + F3) से निकालने में सक्षम था और अब लॉगिन सामान्य है।
हैरी

8

खिड़कियों पर एक पोर्टेबल एसडीके संस्करण रखने वालों के लिए, बस अपने सिस्टम में 2 निम्नलिखित पथ जोड़ें।

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

इसने मेरे लिए काम किया।


मुझे आश्चर्य है कि मेरे जवाब को वोट क्यों दिया गया। क्या इस कार्रवाई का कारण संभव है?
BoCyrill

2
क्योंकि आप यह नहीं कह रहे हैं कि उन्हें कैसे जोड़ा जाए?
फ्लोरियन लुटेरबैक

1
वास्तव में, आपने यह नहीं बताया कि उस प्रक्रिया को कैसे करना है।
अनुज


5

निष्पादित करें: 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

5

11 अप्रैल 2019

ऊपर दिए गए किसी भी उत्तर ने मेरी समस्या को हल नहीं किया है इसलिए मैं Ubuntu 18.04 का उपयोग करने वाले लोगों के लिए एक वर्तमान समाधान (अप्रैल 2019 तक) को शामिल करना चाहता था। यह कैसे मैं ऊपर सवाल हल किया है ...

  1. मैंने वेबसाइट से एंड्रॉइड एसडीके स्थापित किया, और इसे इस फ़ोल्डर में डाल दिया:/usr/lib/Android/
  2. एसडीके कहाँ स्थापित है और संस्करण के लिए खोजें। मेरे मामले में यह यहाँ था:

    /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 टर्मिनल में। आपको अपने नए बनाए गए चर का मार्ग प्राप्त करना चाहिए।

    सोर्सिंग के बारे में एक अतिरिक्त ध्यान दें, मुझे अपने परिवर्तनों को पहचानने के लिए वीएसकोड टर्मिनल के लिए अपने कंप्यूटर को पुनरारंभ करना होगा। पुनः आरंभ करने के बाद, वातावरण सेट किया गया था और मेरे पास तब से कोई समस्या नहीं है।


2

मैं एक जवाब साझा करना चाहूंगा जो कि उबंटू रिपॉजिटरी द्वारा प्रदान की गई एंड्रॉइड एसडीके का उपयोग करके भी दृष्टिकोण प्रदर्शित करता है:

Android एसडीके स्थापित करें

sudo apt-get install android-sdk

पर्यावरण चर निर्यात करें

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

1

एक ही मुद्दे की तलाश में गूगल से यहां आए और 4 घंटे बर्बाद करके यह पता लगाया कि क्या गलत हो सकता है। और अब मैं इस जवाब को पोस्ट करते हुए वास्तव में बेवकूफ महसूस कर रहा हूं। मेरे मामले में, एसडीके, जेडीके, जेआरई, एंट और बाकी सब कुछ एक दिन पहले स्थापित और काम कर रहा था।

लेकिन सिर्फ एक विशेष परियोजना मुझे यह मुद्दा दे रही थी। यह एक "C: \ Users \ Name \ Documents" स्थान के अंतर्गत था

जल्द ही मुझे एहसास हुआ कि मैं सामान्य उपयोगकर्ता के रूप में cmd ​​चला रहा था, जैसे ही मैं प्रशासक के रूप में " रन " चुनता हूं " चुना, सब कुछ काम करने लगा।

युक्ति: हमेशा प्रोजेक्ट स्थान को ध्यान से देखें!


1

इससे मेरी समस्या हल हो गई। अपने सिस्टम पथ के नीचे जोड़ें

PATH_TO_android \ प्लेटफार्मों

PATH_TO_android \ मंच-उपकरण


0

मैं windows7 कंप्यूटर पर इस मुद्दे का अनुभव किया: आयनिक सेवा चल रहा था जब कंप्यूटर शटडाउन (मैं मान रहा हूँ कि यह मुद्दा है कि सब कुछ भ्रष्ट था)

नोड अनुपालन निकालें और एक ताजा नोड कॉपी पर सब कुछ पुनर्स्थापित करें


0

विंडोज में, यदि आप वीएस कोड टर्मिनल से इस कमांड को चला रहे हैं और यहां तक ​​कि सभी पर्यावरण चर (यानी निर्माण-उपकरण, प्लेटफॉर्म-उपकरण, उपकरण) स्थापित करने के बाद भी यह बाहरी cmd टर्मिनल से समान कमांड चलाने की कोशिश नहीं कर रहा है। मेरे मामले में, एक नया वीएस कोड टर्मिनल शुरू करने के बाद भी, यह अद्यतन पर्यावरण पथ को लेने में सक्षम नहीं था।

जब मैंने विंडोज cmd से एक ही कमांड चलाया तो यह काम किया।


0

Ubuntu 20.04 पर ANDROID_HOME वातावरण सेट करने के लिए, 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_HOME साथ ANDROID_SDK_ROOT अन्यथा शिकायत है कि बनाता है ANDROID_HOME मान्य नहीं है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.