พยายามเพิ่ม adb ในตัวแปร PATH OSX


121

ฉันกำลังพยายามพัฒนาสำหรับ Android และฉันต้องการเพิ่มลงใน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
หมายเหตุ: การเว้นวรรคก่อนและ / หรือหลังเครื่องหมายเท่ากับทำให้เกิดปัญหา ควรมีลักษณะดังนี้ "export PATH = $ {PATH}: / Users / simon / Libs / android-sdk-mac_x86 / tools"
Ben H

คำตอบ:


42

ทำไมคุณถึงพยายามเรียกใช้ "./adb" ซึ่งจะข้ามตัวแปรเส้นทางทั้งหมดและมองหา "adb" ในไดเร็กทอรีปัจจุบันเท่านั้น ลองเรียกใช้ "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

คุณไม่มีส่วน / Users / simon

โปรดทราบว่าหากคุณมีทั้งไฟล์. profile และ. bash_profile ไฟล์หลังเท่านั้นที่จะถูกเรียกใช้งาน


พยายามทั้ง ./adb และ adb .. ไม่มีอะไรฉันไม่รู้ว่าเกิดอะไรขึ้นกับสิ่งนี้
skoko

adb ควรจะอยู่ที่ไหน? ตรวจสอบว่ามีอยู่และมีสิทธิ์ดำเนินการ (cd ไปยังไดเร็กทอรีและทำ ls -l adb)
LaC

1
ถ้าฉันไปที่ไดเร็กทอรีฉันสามารถเรียกใช้งานได้โดยไม่มีปัญหา นี่คือผลลัพธ์ -rwxrwxrwx 1 simon staff 179312 28 ก.พ. 02:48 adb
skoko

1
ขอบคุณสำหรับคำตอบนี้ ปรากฎว่ามีทั้ง. profile และ. bash_profile ฉันมีค่าเป็น. profile และใช่ ตอนนี้ใช้งานได้แล้ว ขอบคุณมากครับ
skoko

1
ใช้งานได้ตอนนี้ฉันมีสองโปรไฟล์ หนึ่งเขียนอีกอัน หากใครกำลังทำสิ่งนี้ให้ใช้. bash_profile เพื่อแก้ไขตัวแปร path ฉันทำตามบทช่วยสอนอื่นที่บอกว่าให้ใช้
profile

298

เพิ่มใน PATH สำหรับทุกการเข้าสู่ระบบ

เวอร์ชันควบคุมทั้งหมด :

ในเทอร์มินัลของคุณไปที่โฮมไดเร็กทอรี

ซีดี

สร้างไฟล์. bash_profile

สัมผัส. bash_profile

เปิดไฟล์ด้วย TextEdit

เปิด -e .bash_profile

แทรกบรรทัดลงใน TextEdit

เส้นทางการส่งออก = $ PATH: / Users / username / Library / Android / sdk / platform-tools /

บันทึกไฟล์และโหลดไฟล์ซ้ำ

ที่มา ~ / .bash_profile

ตรวจสอบว่า adb ถูกตั้งค่าเป็นเส้นทางหรือไม่

เวอร์ชัน adb


รุ่นซับเดียว

สะท้อนคำสั่งการส่งออกของคุณและเปลี่ยนทิศทางเอาต์พุตที่จะต่อท้ายไฟล์. bash_profile และรีสตาร์ทเทอร์มินัล (ยังไม่ได้ตรวจสอบ แต่ควรใช้งานได้)

echo "export PATH = $ PATH: / Users / username / Library / Android / sdk / platform-tools / sdk / platform-tools /" >> ~ / .bash_profile


2
ขั้นตอนสุดท้ายในขั้นตอนข้างต้นคือ "Restart Terminal" :)
Brijesh Thakur

14
ไม่จำเป็นต้องรีสตาร์ทเทอร์มินัลการโหลดไฟล์ใหม่ก็เพียงพอแล้ว
Tobrun

อัปเดต: อาจไม่ได้ผลสำหรับคุณเนื่องจากคุณใช้หลายแท็บ ทุกแท็บในเทอร์มินัลของคุณมีเซสชันของตัวเอง ดังนั้นให้โหลด. bash_profile ซ้ำในแท็บของคำสั่ง "adb version"
Tobrun

2
สามารถใช้ export PATH = $ PATH: $ HOME / Library / Android / sdk / platform-tools / เพียงแค่คัดลอกและวางและไม่จำเป็นต้องเปลี่ยนชื่อผู้ใช้
Mohit

1
ฉันลบsdk/platform-tools/บิตในตอนท้ายเนื่องจากนี่เป็นการเตือนฉันใน Android Studio
Ryan R

65

ทางเลือก: ติดตั้ง adb ด้วยวิธีง่ายๆ

หากคุณไม่ต้องการต้องกังวลเกี่ยวกับเส้นทางของคุณหรืออัปเดต adb ด้วยตนเองคุณสามารถใช้homebrewแทนได้

brew cask install android-platform-tools


1
ดีกว่ามากแล้วพยายามเล่นกับ PATH, .bash_profile ฯลฯ ขอบคุณ!
smets.kevin

yup c [_] ~ ᒡ◯ᵔ◯ᒢ
Adam Mendoza

FYI ตอนนี้แสดงข้อผิดพลาด: ข้อผิดพลาด: ไม่มีสูตรที่มีชื่อ "android-platform-tools" ใช้: ชงติดตั้ง Caskroom / cask / android-platform-tools แทน
The Hungry Androider

@The Hungry Androider - แก้ไขแล้ว
brismuth

ฉันยังไม่ได้ลอง แต่ฉันสงสัยว่ามีใครติดตั้ง Android Studio และ Homebrew หรือไม่โดยสงสัยว่าสิ่งนี้อาจสร้างปัญหาการซิงค์ในอนาคตได้หรือไม่ ... แค่คิด
Kinergy

27

บน Macbook Pro ของฉันฉันได้เพิ่มบรรทัดการส่งออกไปที่ ~ / .bash_profile ไม่ใช่. profile

เช่น

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

ตลก. ฉันเปิดไฟล์นั้นขึ้นมา ... บรรทัดนี้อยู่ในนั้นแล้ว ฉันคิดว่า eclipse เพิ่มในขณะที่ติดตั้งปลั๊กอิน?
skoko

เป็นไปได้แม้ว่าฉันจะเพิ่มของฉันเอง
David Snabel-Caunt

อ้างอิงจากjohnnywey.wordpress.com/2008/04/17/fixing-bash-profile-in-os-xคุณอาจมีโปรไฟล์ที่ขัดแย้งกัน
David Snabel-Caunt

ฉันคิดว่านั่นคือสิ่งที่เป็นปัญหา แอปอื่น (ฉันคิดว่า MacPorts) สร้าง
profile

1
อย่าลืมรีสตาร์ทเทอร์มินัลหลังจากที่คุณเพิ่มลงใน PATH
Adam Johns

13

เพียงแค่เข้ารหัสทุกคนที่พบโพสต์ SO นี้เมื่อใช้ Android Studio ซึ่งรวมถึง SDK ซึ่งเป็นส่วนหนึ่งของแพ็คเกจ App (บน Mac OSX)

ดังที่ @davecaunt และ @ user1281750 สังเกต แต่ใส่บรรทัดต่อไปนี้เป็น. bash_profile

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

! น่ากลัว ขอบคุณ scottyab!
rilar

หรืออีกวิธีหนึ่งคืออยู่ใน Users / [user] / Android / sdk / platform-tools .... ฉันไม่ชอบเชื่อมโยงไปยังโฟลเดอร์ Applications (อาจเป็นแค่ฉันก็ได้)
Adam

13

คำตอบสำหรับ MAC ควรเป็น:

  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 Studio ฉันใช้ตัวแปรสำหรับเส้นทาง Android SDK ของฉันและกำหนดค่าในไฟล์~/.zshrc:

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

หมายเหตุ: อย่าใส่เครื่องหมายคำพูดเดี่ยวหรือคู่รอบเส้นทางที่ระบุ ถ้าคุณทำมันจะไม่ได้ผล


7

Android Studio v1.2 ติดตั้งเครื่องมือ adb ในเส้นทางนี้:

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

มันจะเป็นแบบนี้:

  1. เรียกใช้ Terminal
  2. รันadb versionและคาดว่าจะมีผลลัพธ์ข้อผิดพลาด
  3. touch ~/.bash_profile
  4. open ~/.bash_profile
  5. เพิ่มเส้นทางข้างต้นก่อน 'ปิด': $ PATH
  6. source ~/.bash_profile
  7. รันadb versionและคาดหวังผลลัพธ์

โชคดี!


3

ดูเหมือนว่าคุณยังคงพยายามดำเนินการadbกับ./adbไฟล์. ที่ขอให้เปลือกเพื่อเรียกใช้โปรแกรมที่มีชื่อในสมุดงานปัจจุบันadb

ลองเพียงโดยไม่ต้องadb./


พยายามเช่นกัน ไม่มีอะไร นี่เป็นแรงผลักดันฉันอย่างจริงจัง
skoko

@ user569594: คุณรีสตาร์ทเชลล์หลังจากแก้ไขแล้ว.profileหรือยัง (เช่นถ้าคุณecho $PATHก่อนหน้าadbนี้คุณเห็นไดเรกทอรีใหม่หรือไม่)
sarnold

ใช่ฉันพูดถึงสิ่งนั้นในคำถาม มันปรากฏขึ้นในเสียงสะท้อนทุบตีด้วยเหตุผลบางอย่างไม่สามารถมองเห็นได้
skoko

@ user569594: ขอโทษต้องถามฉันเคยเห็นคนแก้ไขสคริปต์เริ่มต้นเชลล์ทดสอบการเปลี่ยนแปลงโดยเริ่มเชลล์ใหม่และลืมที่จะเริ่มเชลล์ปัจจุบันใหม่และสงสัยว่ามันล้มเหลวตรงไหน ... :)
sarnold

ใช่ฉันแน่ใจว่าจะเริ่มต้นใหม่ ปัญหาโกหกว่ามีสองโปรไฟล์ในโฮมไดเร็กทอรีของฉัน ก. bash_profile และ
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ขอบคุณทุกคน.


แทนที่จะเปิดเทอร์มินัลใหม่คุณสามารถใช้คำสั่งต่อไปนี้เพื่อโหลดไฟล์ซ้ำ: " .bash_profile "
Tobrun

0

หากใครไม่สามารถเข้าถึง.bash_profileไฟล์เพื่อใช้ Paths ใหม่ได้และคุณมีคำสั่งอื่น ๆ ในไฟล์นั้น (เช่นคำสั่งนามแฝง) ให้ลองย้ายคำสั่ง PATH ไปที่ด้านบนสุดของไฟล์

นั่นคือสิ่งเดียวที่ใช้ได้ผลสำหรับฉัน สาเหตุที่มันใช้งานได้เพราะฉันพิมพ์ผิดในคำสั่งนามแฝงและเห็นได้ชัดว่าไฟล์นี้แสดงข้อผิดพลาดและออกหากพบปัญหา นั่นคือสาเหตุที่ข้อความ PATH ของฉันไม่ถูกเรียกใช้ การย้ายไปด้านบนเพียงแค่ปล่อยให้มันทำงานก่อน


0

ใส่คำอธิบายภาพที่นี่

วิธีแก้ปัญหาที่ 2 อธิบายไว้ด้านล่าง แต่เมื่อฉันปิดเทอร์มินัลการเปลี่ยนแปลงที่ฉันทำในตัวแปรพา ธ จะหายไป ฉันชอบวิธีแรกมากกว่า!

ใส่คำอธิบายภาพที่นี่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.