मेरे पास त्रुटि है जब मैं Android चलना शुरू करता हूं
What went wrong:
A problem occurred evaluating project ':app'.
> SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable.
मेरे पास त्रुटि है जब मैं Android चलना शुरू करता हूं
What went wrong:
A problem occurred evaluating project ':app'.
> SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable.
जवाबों:
android/
अपनी प्रतिक्रिया-मूल परियोजना की निर्देशिका पर जाएंlocal.properties
इस लाइन के साथ एक फ़ाइल बनाएँ :sdk.dir = /Users/USERNAME/Library/Android/sdk
USERNAME
आपका MacOS उपयोगकर्ता नाम कहां है
sdk.dir = C:\\Users\\USERNAME\\AppData\\Local\\Android\\sdk
local.properties
अपने Android SDK पथ को नीचे की तरह चिपकाएँ
sdk.dir = C:\\Users\\USERNAME\\AppData\\Local\\Android\\sdk
sdk.dir = /Users/USERNAME/Library/Android/sdk
sdk.dir = /home/USERNAME/Android/Sdk
USERNAME
अपने उपयोगकर्ता नाम के साथ बदलें
अब, react-native run-android
अपने टर्मिनल में चलाएँ ।
sdk.dir=/home/USERNAME/Android/Sdk
आप ANDROID_PATH को जोड़ने का प्रयास कर सकते हैं
export ANDROID_HOME=/Users/<username>/Library/Android/sdk/
export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools
ANDROID_PATH
वातावरण है (Ubuntu, .bashrc फ़ाइल)। हालाँकि, कुछ कारणों से मुझे अभी भी समस्या हो रही है। मैंने इसे local.properties
अन्य उत्तरों में बताए गए मार्ग को बनाने और डालकर तय किया ।
local.properties
हालांकि, किया।
खोलें ~/.bash_profile
और जोड़ें:
export ANDROID_HOME=~/Library/Android/sdk/
export PATH=$PATH:~/android-sdks/platform-tools/
export PATH=$PATH:~/android-sdks/tools/
source ~/.bash_profile
नई निर्यात लाइनें बनाने के लिए टाइप करें।
अद्यतन न करेंlocal.properties
, यह निश्चित रूप से एक बुरा अभ्यास है।
यह मैंने इसे कैसे तय किया। ~/.bash_profile
या में निम्नलिखित जोड़ें ~/.bashrc
।
export ANDROID_HOME=/usr/local/share/android-sdk
export PATH=$ANDROID_HOME/tools:$PATH
export PATH=$ANDROID_HOME/platform-tools:$PATH
export PATH=$ANDROID_HOME/build-tools/23.0.1:$PATH
नोट: मैं इन निर्देशों का पालन करते हुए Android SDKbrew cask
स्थापित करता था ।
यदि आप विंडो से बच रहे हैं (बैकलैश जोड़ें) बैकस्लैश और android/local.properties
फाइल में कोलन । अगर इसकी नहीं है तो इसे बनाएं
sdk.dir = C\:\\Android\\sdk
MAC / Unix पर आरंभ करने के लिए React Native0.58 के लिए अद्यतित चरण
नैनो ~ / .bash_profile
निर्यात ANDROID_HOME = $ HOME / लाइब्रेरी / Android / sdk
निर्यात पथ = $ पथ: $ ANDROID_HOME / एमुलेटर
निर्यात पथ = $ पथ: $ ANDROID_HOME / उपकरण
निर्यात पथ = $ पथ: $ ANDROID_HOME / उपकरण / बिन
निर्यात पथ = $ पथ: $ ANDROID_HOME / मंच-उपकरण
Control+S to save
Control+X to exit
Y to save changes
source ~/.bash_profile
echo $PATH
adb devices
विंडोज उपयोगकर्ताओं के लिए
एक सरल उपाय एसडीवी पथ को एनवायरमेंट वेरिएबल्स सूची में सेट करना है।
ध्यान दें:
आपका Android Sdk आम तौर पर में स्थित है
C: \ Users \ yourusername \ AppData \ Local \ एंड्रॉयड \ Sdk
अपने वर्तमान टर्मिनल को बंद करना सुनिश्चित करें क्योंकि आपका टर्मिनल आपके सभी पहले से मौजूद पर्यावरण चर को पकड़ लेता है।
आपकी परियोजना प्रदान की गई पथ के माध्यम से परियोजना सेटिंग्स में एसडीके सेट नहीं ढूंढ रही है, इसलिए परियोजना को सही दिशा में इंगित करने की आवश्यकता है, और आपके पास इसे पूरा करने के लिए कुछ विकल्प हैं, लेकिन पहले सही एसडीके फ़ोल्डर ढूंढकर शुरू करें।
पैकेज मैनेजर से
यदि आप एक पैकेज आधारित JRE का उपयोग कर रहे हैं जैसे कि डेबियन-आधारित वितरण में कस्टम PPA के माध्यम से Java 8 JRE की तरह , या OpenJDK का उपयोग किया जाता है , तो निर्देशिका सबसे अधिक संभावना होगी / usr / lib / jvm / java-8-oracle (या) जो भी संस्करण आपने चुना है)। आप इस पथ को JAVA_HOME वातावरण चर में सेट कर सकते हैं :
$ echo $JAVA_HOME
/usr/lib/jvm/java-8-oracle
मैनुअल डाउनलोड
यदि आपने जावा JRE / SDK डाउनलोड के माध्यम से स्थापित किया है , तो यह वह जगह होगी जहां आपने फ़ोल्डर रखा था, उदाहरण के लिए / home / username /jdk-8u121_1.8.0 (या कुछ इसी तरह)।
स्क्रिप्टेड इंस्टॉल्स भले ही एसडीके को / ऑप्ट / जावा-8-ओरेकल में जोड़ सकते हैं , लेकिन इस लेखन के रूप में, जावा इंस्टॉलेशन निर्देश आपके हाथों में फ़ोल्डर प्लेसमेंट को छोड़ देता है।
Android स्टूडियो 2.2
अंत में यदि आप एंड्रॉइड स्टूडियो का उपयोग कर रहे हैं, तो एसडीके रखा गया है जहां आपने इसे स्टूडियो के एसडीओ मैनेजर के माध्यम से डाउनलोड की गई एसडीके फाइलों को रखने के लिए निर्धारित किया है। पर जाकर फ़ाइल> सेटिंग> प्रदर्शन और व्यवहार> सिस्टम सेटिंग> Android एसडीके , आप परिवर्तन करने के लिए विकल्प के साथ शीर्ष पर एसडीके स्थान की स्थापना, और डिफ़ॉल्ट किया जा रहा फ़ोल्डर पा सकते हैं ~ / एंड्रॉयड / SDK ।
अब जब हम जानते हैं कि एसडीके कहां है, यह प्रतिक्रिया-मूलक को बताने का समय है।
विकल्प 1: स्थानीय के साथ सेट करें
यह विधि बहुत ही सरल है, और इसके लिए आवश्यक सभी फ़ाइल स्थानीय फ़ोल्डर में बनाई जा रही है, जहां Project_Folder आपके रिएक्ट-नेटिव एप्लिकेशन का आधार है:
Project_Folder / एंड्रॉयड / अनुप्रयोग
अपने local.properties में, आप अपने SDK फ़ोल्डर के पथ में चर sdk.dir सेट करना चाहते हैं:
sdk.dir=/home/username/Android/Sdk
हालांकि यह मुद्दे को मापने का सबसे आसान तरीका है, यह सबसे अच्छा नहीं है, खासकर यदि आप कई परियोजनाओं के साथ काम करते हैं। प्रत्येक प्रोजेक्ट के लिए, आपको प्रत्येक प्रोजेक्ट के लिए यह फ़ाइल बनानी होगी, और यदि फ़ोल्डर प्रत्येक प्रोजेक्ट के local.properties के लिए इस फ़ाइल को बदलने की योजना बनाता है।
फ़ाइल सहेजे जाने के बाद, प्रतिक्रिया-देशी रन-एंड्रॉइड कमांड को फिर से चलाएँ।
विकल्प 2: पर्यावरण चर के साथ सेटिंग्स फ़ोल्डर
अन्य विकल्प SDK फ़ोल्डरों को स्थानीय पर्यावरण चर पर सेट करना है जो कि प्रतिक्रिया-मूल डिफ़ॉल्ट रूप से दिखता है। ऐसा करने के लिए, हम ANDROID_HOME पथ जोड़ेंगे। एक बोनस के रूप में हम अपने एंड्रॉइड टूल को भी उसी स्थान पर जोड़ सकते हैं। हमें इसे अपने घर निर्देशिका में .bash_profile या .profile फ़ाइलों में जोड़ने की आवश्यकता है, जो पिछले लोड किए गए हैं, इसलिए हम यह सुनिश्चित कर सकते हैं कि हमारे द्वारा बनाई गई सेटिंग्स को ओवरराइड करने के अलावा और कुछ नहीं है। चूंकि ये आपके होम डायरेक्टरी में हैं, इसलिए एस्केलेटेड विशेषाधिकारों के साथ संपादित करने की आवश्यकता नहीं है।
**$ vim ~/.profile** (use nano or pico if you prefer)
फ़ाइल में एसडीके फोल्डर को बदलने के लिए निम्नलिखित पंक्तियों को जोड़ें जो आपने ऊपर पाया है। मैं एक उदाहरण के रूप में एंड्रॉइड स्टूडियो फ़ोल्डर का उपयोग करूंगा:
export ANDROID_HOME="~/Android/Sdk"
export PATH=$PATH:~/Android/Sdk/tools:~/Android/Sdk/platform-tools
फ़ाइल सहेजें, फिर प्रोफ़ाइल सेटिंग लागू करें:
$ source ~/.profile
$ echo $ANDROID_HOME
/home/dbrown/Android/Sdk
यदि Sdk फ़ोल्डर सही ढंग से दिखाता है, तो बधाई! अपनी प्रतिक्रिया-मूल कमांड को फिर से चलाएं, और ऐप बनाएँ प्रक्रिया को आगे जारी रखें।
अगर आपके पास अभी भी मुद्दे हैं
यदि किसी कारण से आपको त्रुटि प्राप्त होती है " > हैश स्ट्रिंग 'एंड्रॉइड -23' के साथ लक्ष्य खोजने में विफल रहा: आपका / एसडीके / फ़ोल्डर , आपको यह सुनिश्चित करने की आवश्यकता है कि परियोजना का निर्माण संस्करण और एसडीके स्थापित मैच का संस्करण (प्रतिक्रिया) -Native डिफ़ॉल्ट के लिए 23.0.1)। आप Project_Folder / android / app / build.gradle में डिफ़ॉल्ट संस्करण पा सकते हैं और फिर buildToolsVersion की खोज कर सकते हैं। आप निश्चित रूप से इस फ़ाइल से संस्करण बदल सकते हैं, या Android Studio में फ़ाइल में जा सकते हैं। > प्रोजेक्ट एसडीके को बदलने के लिए प्रोजेक्ट स्ट्रक्चर । मैं इस संस्करण को बदलने का सुझाव नहीं दूंगा जब तक कि आपको पूरी तरह से पता नहीं है कि आप क्या कर रहे हैं, अन्यथा एसडीके संस्करण को स्थापित करें जिसे प्रोजेक्ट ढूंढ रहा है।
उबंटू पर, जहां आपको एंड्रॉइड स्टूडियो से अलग से एसडीके प्राप्त करना होगा अजीब पथ एंड्रॉइड स्टूडियो के साथ काम करेगा लेकिन रिएक्ट नेटिव के साथ, आपको एक फ़ाइल नाम बनाने की आवश्यकता होगी local.properties
।
उदाहरण के लिए सराय ~/AwesomeProject/android
और यह लाइन डालें:
sdk.dir=/path/to/sdk/in/your/computer
अपनी प्रतिक्रिया परियोजना में एंड्रॉइड फ़ोल्डर local.properties
से हटाएं और इसे आज़माएं।
मैंने यह किया है और सफल रहा।
इसने मेरे लिए काम किया।
मैं स्टीफन ग्राइडर के रिएक्टिव नेटिव को उदमी पर ले जा रहा हूं और उनमें से एक छात्र ने लेक्चर 50 में पोस्ट किया है। कमांड लाइन (पास्ट / ओ '$' में पास्ट वर्बटिम)।
$ export "ANDROID_HOME=/usr/local/opt/android-sdk" >~/.bash_profile
> The SDK directory '/usr/local/opt/android-sdk' does not exist.
सबसे अच्छा समाधान मैं पा सकता हूं:
इस तरह से फ़ाइल को वर्गीकृत किया जाएगा:
यदि आपकी मशीन सेटअप के साथ सब कुछ ठीक हो गया है और आप एंड्रॉइड स्टूडियो का उपयोग करके प्रोजेक्ट को संकलित कर सकते हैं, तो प्रतिक्रिया-देशी क्ली एंड्रॉइड कमांड के माध्यम से आपके ऐप को बनाने के लिए कुछ भी नहीं रुकेगा।
इस दृष्टिकोण के साथ, न केवल आप एसडीके की समस्या को हल करेंगे, आप एंड्रॉइड विकास के लिए अपने मशीन सेटअप से संबंधित कई मुद्दों को भी हल करेंगे। आयात स्वचालित रूप से SDK स्थान ढूंढ लेगा और स्थानीय बना देगा। इसलिए आपको मैन्युअल हस्तक्षेप के बारे में चिंता करने की आवश्यकता नहीं है।
लिनक्स उपयोगकर्ताओं के लिए
आपके ऐप को android-sdk का रास्ता नहीं मिल रहा है, इसलिए यदि आप linux (ubuntu) का उपयोग कर रहे हैं, तो आपको "local.properties" नामक फ़ाइल को जोड़ने और इसे एंड्रॉइड फ़ोल्डर के अंदर सहेजने की आवश्यकता है, जो आपके ऐप फ़ोल्डर के अंदर बनाया गया है ।
आपको local.properties फ़ाइल के अंदर नीचे की पंक्ति जोड़ने की आवश्यकता है, जो कि ऐप को चलाने के लिए आपके एंड्रॉइड-एसडीके सिस्टम के अंदर स्थित आपके एंड्रॉइड-एसडीके का पथ है।
sdk.dir=/opt/android-sdk/
बचाने के लिए और कमांड प्रतिक्रिया देशी रन-एंड्रॉयड फिर से चलाएँ
या
आप टर्मिनल खोल सकते हैं, टाइप करें
सूडो नैनो ~ / .bashrc
और फ़ाइल के अंत में नीचे का पथ पेस्ट करें
निर्यात ANDROID_HOME = "/ opt / android-sdk /"
और अपने कंप्यूटर को पुनरारंभ करें और उसके बाद फिर से प्रतिक्रिया-देशी रन-एंड्रॉइड चलाएं ।
नोट: - यदि आप .bashrc फ़ाइल में सेट पाथ रखते हैं, तो आपको local.properties फ़ाइल बनाने की भी आवश्यकता नहीं है।
यदि आप बनाते हैं और android studio
प्रोजेक्ट करते हैं, तो आप देख सकते हैं कि एक local.properties
फ़ाइल आपके प्रोजेक्ट रूट डायरेक्टरी के अंदर बनाई गई है। जब आप एक प्रतिक्रिया देशी प्रोजेक्ट बनाते हैं, तो यह आपके लिए वह फ़ाइल नहीं बनाता है। इसलिए आपको इसे मैन्युअली बनाना होगा। और इसमें skd dir जोड़ना होगा। इसलिए android फोल्डर (रूट पर) के अंदर एक नई फाइल बनाएं। और अपना sdk पथ इस तरह
sdk.dir=D\:\\Android\\SDK\\android_sdk_studio .
रखें याद रखें: सिंगल को डबल के साथ हटा दें। बस ऊपर की तरह।
इस समस्या को हल करने के 2 तरीके हैं:
एंड्रॉइड स्टूडियो में सिंपल अपनी प्रतिक्रिया देशी एंड्रॉइड प्रोजेक्ट को चलाएं यह देशी एंड्रॉइड प्रोजेक्ट में आपकी स्थानीय.प्राय फाइल को स्वचालित रूप से उत्पन्न करेगा ।
ए। रिएक्ट-देशी प्रोजेक्ट पर जाएं -> एंड्रॉइड
बी। एक फ़ाइल बनाएँ local.properties
c। फ़ाइल खोलें
d। अपने Android SDK पथ को नीचे की तरह चिपकाएँ
आपके प्रोजेक्ट डायरेक्टरी में "android" नाम का एक फोल्डर है और उसके अंदर local.properties फाइल है। फ़ाइल को हटा दें और बिल्ड सफलतापूर्वक चलना चाहिए
यदि local.properties फ़ाइल अनुपलब्ध है, तो बस "sdk.dir = / Users / apple / Library / Android / sdk" के साथ "प्रोजेक्ट / एंड्रॉइड" फ़ोल्डर में एक बनाएं और उस स्थान पर अपने एसडीके को सुनिश्चित करें।
मैक पर कस्टम एक्सटेंशन के साथ एक फ़ाइल बनाने के लिए निम्नलिखित लिंक देखें
मैं कस्टम एक्सटेंशन (.sas) के साथ TextEdit (मैक) फ़ाइल को कैसे सहेज सकता हूं?
समस्या यह है कि आपने पर्यावरण चर को गलत तरीके से समझा है। आपको (Windows में) SDK का उपयोग करना होगा:C:\Users\YOUR_USERNAME\AppData\Local\Android\Sdk
अधिक जानकारी के लिए: https://facebook.github.io/react-native/docs/getting-started
चयन करें: बिंदु 3 में Android विकास पर्यावरण अनुभाग में प्रतिक्रियाशील सीएलआई क्विकस्टार्ट। ANDROID_HOME
पर्यावरण चर को कॉन्फ़िगर करें
यदि आप इसे वैसे ही करते हैं जैसा कि आपके पास अभी है, तो आपको अपने पर्यावरण चर का उपयोग करने के लिए प्रत्येक प्रोजेक्ट को कॉन्फ़िगर करना होगा और यदि यह परियोजना उनके उपकरणों के साथ कई लोगों के बीच है तो यह समस्या पैदा कर सकता है। यदि आप ऐसा करते हैं जैसा कि मैंने आपको बताया है, तो आपको किसी भी परियोजना को कॉन्फ़िगर नहीं करना पड़ेगा।
यदि आपके पास एंड्रॉइड स्टूडियो स्थापित है, तो केवल Project/android
एंड्रॉइड स्टूडियो का उपयोग करके खोलें , और यह आपको प्रोजेक्ट में एसडीके स्थान पथ को स्विच करने के लिए सूचित करेगा।
अपने सिस्टम के अन्य एंड्रॉइड प्रोजेक्ट को कॉपी करें। स्थानीय-प्रतिक्रियाएं और प्रतिक्रिया-मूल परियोजना के एंड्रॉइड फ़ोल्डर में पेस्ट करें जो यह काम करेगा।
sdk.dir=C\:\\Users\\paul\\AppData\\Local\\Android\\Sdk