PATH वैरिएबल OSX में adb जोड़ने की कोशिश की जा रही है


121

मैं एंड्रॉइड के लिए विकसित करने की कोशिश कर रहा हूं और मैं adbइसे अपने साथ जोड़ना चाहता हूं PATHताकि मैं इसे वास्तव में आसानी से लॉन्च कर सकूं। मैंने कुछ कारणों से निर्देशिकाओं को पहले जोड़ा adbहै जो नहीं चाहता है। यह बहुत निराशाजनक है। किसी और को यह समस्या पहले हुई है?

मैंने एक फ़ाइल बनाई .profileऔर उसमें निम्नलिखित जोड़ दिए।

export PATH = ${PATH}:/Users/simon/Libs/android-sdk-mac_x86/platform-tools/
export PATH = ${PATH}:/Users/simon/Libs/android-sdk-mac_x86/tools

जब मैं अपने पर्यावरण पथ की जाँच करता हूँ तो मैं निम्नलिखित देखता हूँ:

/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/Libs/android-sdk-mac_x86/tools:/Libs/android-sdk-mac_x86/platform-tools

तो मुझे पता है कि यह मेरे PATHचर में जोड़ा गया है। अब जब मैं दौड़ने की कोशिश करता adbहूं तो मुझे लगता है कि यह नहीं मिला।

-bash: ./adb: No such file or directory

यह बहुत निराशाजनक है। यह अनुमति के साथ एक समस्या हो सकती है? क्या किसी को OSX और Android के साथ यह समस्या थी?


5
नोट: बराबर चिह्न के पहले और बाद में रिक्त स्थान डालना समस्याओं का कारण बनता है। यह "निर्यात पथ = $ {पाथ" जैसा दिखना चाहिए: / उपयोगकर्ता / सिमॉन / लिबास / एंड्रॉइड-एसडीके-मैक_x86 / उपकरण "
बेन एच

जवाबों:


42

आप "./adb" चलाने की कोशिश क्यों कर रहे हैं? यह पथ चर को पूरी तरह से छोड़ देता है और केवल वर्तमान निर्देशिका में "अदब" की तलाश करता है। इसके बजाय "अदब" चलाने की कोशिश करें।

संपादित करें: आपका रास्ता गलत है। आप कहते हैं कि आपको मिल जाएगा

/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/Libs/android-sdk-mac_x86/tools:/Libs/android-sdk-mac_x86/platform-tools

आपको / उपयोगकर्ता / सिमॉन भाग याद आ रहा है।

यह भी ध्यान दें कि यदि आपके पास .profile और .bash_profile फ़ाइलें हैं, तो केवल बाद वाले को निष्पादित किया जाता है।


दोनों की कोशिश की ।/bb और adb .. कुछ नहीं, मुझे नहीं पता कि इसमें क्या गलत है।
स्कोको

Adb को कहाँ स्थित माना जाता है? जांचें कि यह वहां है और यह अनुमतियों को निष्पादित करता है (निर्देशिका में सीडी और एलएस-एलएलबी करते हैं)।
लाक

1
यदि मैं निर्देशिका में जाता हूं तो मैं इसे चला सकता हूं कोई समस्या नहीं है। यहाँ आउटपुट है। -rwxrwxrwx 1 सिमोन स्टाफ 179312 28 फरवरी 02:48 अदब
स्कोको

1
इस उत्तर के लिए धन्यवाद। यह दोनों .profile और .bash_profile दोनों निकलता है। मेरे पास .profile और yea के मूल्य थे। अब यह काम कर रहा है। बहुत बहुत धन्यवाद दोस्तों।
स्कोको

1
अब काम करता है, मैं सिर्फ दो प्रोफाइल था। एक ओवर दूसरे ने लिखा। यदि कोई भी इस का उपयोग कर रहा है .bash_profile पथ चर को संपादित करने के लिए। मैं एक अलग ट्यूटोरियल कि .profile उपयोग करने के लिए कहा पीछा किया
skoko

298

हर लॉगिन के लिए PATH में जोड़ें

कुल नियंत्रण संस्करण :

अपने टर्मिनल में, होम डायरेक्टरी में जाएँ

सीडी

फ़ाइल बनाएँ .bash_profile

स्पर्श .bash_profile

TextEdit के साथ खुली फ़ाइल

open -e .bash_profile

TextEdit में लाइन डालें

निर्यात पथ = $ पथ: / उपयोगकर्ता / उपयोगकर्ता नाम / पुस्तकालय / Android / sdk / मंच-उपकरण /

फ़ाइल सहेजें और फ़ाइल पुनः लोड करें

source ~ / .bash_profile

जाँच करें कि क्या adb को पथ में सेट किया गया था

अदब संस्करण


एक लाइनर संस्करण

अपने निर्यात कमांड को इको करें और आउटपुट को .bash_profile फ़ाइल और पुनः आरंभ टर्मिनल से जोड़ दिया जाए। (यह सत्यापित नहीं है, लेकिन काम करना चाहिए)

प्रतिध्वनि "निर्यात पथ = $ पथ: / उपयोगकर्ता / उपयोगकर्ता नाम / पुस्तकालय / Android / sdk / मंच-उपकरण / sdk / मंच-उपकरण /" >> ~ / .bash_profile


2
उपरोक्त चरण में प्रचलित कदम "रिस्टार्ट टर्मिनल" है :)
बृजेश ठाकुर

14
पुनरारंभ टर्मिनल आवश्यक नहीं होना चाहिए, फ़ाइल को फिर से लोड करना पर्याप्त होना चाहिए
टोब्रुन

अद्यतन: संभवतः यह आपके लिए काम नहीं करता क्योंकि आप कई टैब का उपयोग कर रहे हैं। आपके टर्मिनल के प्रत्येक टैब का अपना सत्र है। इसलिए "adb संस्करण" कमांड के टैब में .bash_profile को पुनः लोड करें।
टोब्रुन

2
निर्यात पाथ = $ पाथ का उपयोग कर सकते हैं: घर / लाइब्रेरी / एंड्रॉइड / एसडीके / प्लेटफ़ॉर्म-टूल्स /, बस कॉपी और पेस्ट करके और उपयोगकर्ता नाम
मोहित

1
मैंने sdk/platform-tools/अंत में थोड़ा हटा दिया , क्योंकि यह मुझे एंड्रॉइड स्टूडियो में बैश चेतावनी दे रहा था।
रयान आर

65

वैकल्पिक: आसान तरीका adb स्थापित करें

यदि आप अपने पथ के बारे में चिंता करना या मैन्युअल रूप से अदब को अपडेट नहीं करना चाहते हैं, तो आप इसके बजाय होमब्रे का उपयोग कर सकते हैं ।

brew cask install android-platform-tools


1
बहुत, बहुत बेहतर तो PATH, .bash_profile आदि के साथ बेला करने की कोशिश कर रहा है .. धन्यवाद!
smets.kevin

yup c [_] ~ ᒡ ◯ ◯ ᒢ
Adam

FYI करें, यह अब त्रुटि देता है: त्रुटि: "एंड्रॉइड-प्लेटफॉर्म-टूल्स" नाम के साथ कोई उपलब्ध सूत्र नहीं। का प्रयोग करें: शराब की भठ्ठी स्थापित कास्क्रूम / पीपा / एंड्रॉयड-प्लेटफ़ॉर्म-उपकरण के बजाय
भूख लगी है Androider

@ द हंग्री एंड्रॉइड - ने इसे ठीक किया
ब्रिस्मथ

मैंने यह कोशिश नहीं की है, लेकिन मैं सोच रहा हूं कि क्या कोई एंड्रॉइड स्टूडियो के साथ-साथ होमब्रे के साथ भी इंस्टॉल करता है, तो सोचता हूं कि क्या यह भविष्य में सिंक समस्या से बाहर एक संस्करण बना सकता है ... बस एक विचार
किनेर्ज

27

मेरे मैकबुक प्रो पर, मैंने एक्सपोर्ट लाइनों को ~ / .bash_profile, not .profile में जोड़ दिया है।

जैसे

export PATH=/Users/me/android-sdk-mac_86/platform-tools:/Users/me/android-sdk-mac_86/tools:$PATH

मजेदार। मैंने उस फ़ाइल को खोला ... यह सटीक रेखा पहले से ही वहां मौजूद थी। मुझे लगता है कि प्लग-इन स्थापित करते समय ग्रहण ने कहा?
स्कोको

यह संभव है, हालांकि मैंने खुद को जोड़ा।
डेविड स्नेबेल-कॉंट

Johnnywey.wordpress.com/2008/04/17/fixing-bash-profile-in-os-x के अनुसार, आपके पास परस्पर विरोधी प्रोफाइल हो सकते हैं
डेविड स्नैब-कॉंट

मुझे लगता है कि वास्तव में यही समस्या थी। एक अन्य ऐप (मुझे लगता है कि MacPorts) ने .profile
skoko

1
PATH में जोड़ने के बाद टर्मिनल को पुनः आरंभ करना न भूलें।
एडम जॉन्स

13

एंड्रॉइड स्टूडियो का उपयोग करते समय किसी को भी यह एसओ पद मिल जाता है जिसमें एसडीके में ऐप पैकेज (मैक ओएसएक्स पर) का हिस्सा होता है।

तो जैसा कि @davecaunt और @ user1281750 ने उल्लेख किया है लेकिन निम्न लाइन को .bash_profile पर डालें

export PATH=/Applications/Android\ Studio.app/sdk/tools:/Applications/Android\ Studio.app/sdk/platform-tools:$PATH

बहुत बढ़िया! Thx स्कॉटीटैब!
10

वैकल्पिक रूप से, यह उपयोगकर्ता / [उपयोगकर्ता] / एंड्रॉइड / एसडीके / प्लेटफ़ॉर्म-टूल में स्थित है .... मुझे एप्लिकेशन फ़ोल्डर से लिंक करना पसंद नहीं है (शायद यह सिर्फ मुझे हालांकि)।
एडम

13

मैक के लिए उत्तर होना चाहिए:

  1. निम्नलिखित आदेशों के साथ अपना bash_profile खोलें: open ~/.bash_profile

  2. यदि बेस प्रोफ़ाइल फ़ाइल मौजूद नहीं है, touch .bash_profileतो निम्न कमांड के साथ एक नया बनाएं: फिर चरण 1 को दोहराएं।

  3. निम्नलिखित पंक्ति जोड़ें: export PATH=/Users/"YOURUSER"/Library/Android/sdk/platform-tools:$PATH

  4. टाइप करके अपनी बैश विंडो को दोबारा टेस्ट करें adb shell

सौभाग्य! :-)


9

अपने टर्मिनल में, होम निर्देशिका में नेविगेट करें

cd
create file .bash_profile

touch .bash_profile
open file with TextEdit

open -e .bash_profile
insert line into TextEdit

export PATH=$PATH:/Users/username/Library/Android/sdk/platform-tools/
save file and reload file

source ~ / .bash_profile बहुत महत्वपूर्ण जाँच है अगर adb को पथ में सेट किया गया था

adb version

यह अब ठीक होना चाहिए।


8

मैं zsh और Android स्टूडियो का उपयोग करता हूं। मैं अपने Android SDK पथ के लिए एक चर का उपयोग करता हूं और फ़ाइल में कॉन्फ़िगर करता हूं ~/.zshrc:

export ANDROID_HOME=/Applications/Android\ Studio.app/sdk
export PATH="$ANDROID_HOME/platform-tools:$ANDROID_HOME/tools:$PATH"

नोट: सुनिश्चित करें कि निर्दिष्ट पथ के आसपास सिंगल या डबल कोट्स को शामिल न करें। यदि आप करते हैं, यह काम नहीं करेगा।


7

एंड्रॉइड स्टूडियो v1.2 इस रास्ते में एडीबी टूल स्थापित करता है:

~/Library/Android/sdk/platform-tools/adb

तो यह इस प्रकार है:

  1. टर्मिनल चलाएं
  2. रन adb versionऔर एक त्रुटि आउटपुट की उम्मीद है
  3. touch ~/.bash_profile
  4. open ~/.bash_profile
  5. 'समापन' से पहले उपरोक्त पथ जोड़ें: $ पथ
  6. source ~/.bash_profile
  7. रन adb versionऔर एक आउटपुट की उम्मीद है

सौभाग्य!


3

ऐसा प्रतीत होता है कि आप अभी भी निष्पादित adbकरना चाह रहे हैं ./adb। यह शेल को adb वर्तमान कार्यशील निर्देशिका में प्रोग्राम को चलाने के लिए कहता है ।

adbबिना बस कोशिश करें ./


कोशिश भी की। कुछ भी तो नहीं। यह मुझे गंभीर रूप से पागल कर रहा है।
23

@ user569594: क्या आपने संपादन के बाद अपना शेल फिर से शुरू किया .profile? (यानी, यदि आप echo $PATHपहले adbकरते हैं, तो क्या आप नई निर्देशिकाओं को देखते हैं?)
सर्पोल्ड

हां, मैंने उस प्रश्न का उल्लेख किया है। यह प्रतिध्वनि में दिखाई देता है, किसी कारण बस इसे आईटी नहीं देख सकता है।
स्कोको

@ user569594: क्षमा करें, पूछना था, मैंने देखा है कि लोग अपने शेल स्टार्ट-अप स्क्रिप्ट्स को संपादित करते हैं, एक नया शेल शुरू करके अपने परिवर्तनों का परीक्षण करते हैं, और अपने वर्तमान शेल को फिर से शुरू करना भूल जाते हैं और आश्चर्य करते हैं कि यह कहाँ विफल होता है ... :)
सरनाल्ड

हाँ, मैंने पुनः आरंभ करना सुनिश्चित किया। समस्या मेरे होम डायरेक्टरी में दो प्रोफाइल रखने में निहित है। A
.bash_profile

3

~/.bashrcजोड़ने के लिए टर्मिनल में हमेशा फ़ाइल होती है और आप जिस रास्ते का उपयोग करना चाहते हैं, वहाँ डालते हैं:

export PATH=$PATH:/XXX

जहाँ XXX वह पथ है जिसका आप उपयोग करना चाहते हैं।

adb के लिए, यहाँ मैं क्या उपयोग करता हूँ:

export PATH=$PATH:/home/user/Android/android-sdk-linux_x86/platform-tools/

(जहां "उपयोगकर्ता" मेरा उपयोगकर्ता नाम है)।


1

मैंने कहा export PATH=${PATH}:/Users/mishrapranjal/android-sdks/platform-tools/ दोनों स्थानों में.bash_profile और .profileयह सुनिश्चित करने के लिए कि यह काम करता है। फिर भी यह काम नहीं कर रहा था और फिर मैंने टर्मिनल को फिर से शुरू करने के बारे में सरनॉल्ड की नोक पर देखा और यह एक आकर्षण की तरह काम किया। इसने PATHजब भी मुझे दौड़ना था , हर बार इसे जोड़ने का मेरा समय बचाया adb। आप लोगों को धन्यवाद।


: अपने टर्मिनल relauching के बजाय आप फ़ाइल को फिर से लोड करने के लिए निम्न आदेश का उपयोग कर सकते हैं " .bash_profile। "
Tobrun

0

किसी को भी वहाँ पहुँचने के लिए नहीं कर पा रहे हैं .bash_profileकिसी भी नए पथ लेने के लिए फ़ाइल और आपके पास उस फ़ाइल में अन्य कमांड हैं (जैसे कि अन्य नाम), तो फ़ाइल के शीर्ष पर PATH कथनों को स्थानांतरित करने का प्रयास करें।

बस यही एक चीज है जो मेरे लिए काम करती है। यह काम करने का कारण यह था कि मेरे उर्फ ​​कमांडों में कुछ टाइपोस थे और जाहिर तौर पर यह फ़ाइल एक त्रुटि फेंकता है और अगर यह एक समस्या में चलता है तो बाहर निकलता है। इसीलिए मेरे पैथ स्टेटमेंट नहीं चलाए जा रहे थे। इसे शीर्ष पर ले जाने से पहले इसे चलने दें।


0

यहाँ छवि विवरण दर्ज करें

दूसरा समाधान नीचे समझाया गया है। लेकिन जब मैं टर्मिनल को बंद करता हूं तो जो परिवर्तन मैंने पथ चर में किया है वह खो जाता है। इस प्रकार मैं पहला तरीका पसंद करता हूँ!

यहाँ छवि विवरण दर्ज करें

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