การตั้งค่าตัวแปรสภาพแวดล้อม ANDROID_HOME บน Mac OS X


305

ใครช่วยโพสต์วิธีแก้ปัญหาการทำงานสำหรับการตั้งค่าANDROID_HOMEผ่านเทอร์มินัล

เส้นทางของฉันไปที่ใช้ Android SDK /Applications/ADT/sdkเป็น


ติดตั้ง ANDROID_HOME, JAVA_HOME ใน MAC
Shomu

คำตอบ:


581

ตำแหน่งที่ติดตั้ง Android-SDK ขึ้นอยู่กับวิธีที่คุณติดตั้ง

  1. หากคุณดาวน์โหลด SDK ผ่านเว็บไซต์ของพวกเขาแล้วลาก / วางแอปพลิเคชันไปยังโฟลเดอร์แอปพลิเคชันของคุณเป็นไปได้มากที่สุดที่นี่:

    /Applications/ADT/sdk (ในกรณีของคุณ)

  2. หากคุณติดตั้ง SDK โดยใช้ Homebrew ( brew cask install android-sdk) แสดงว่าอยู่ที่นี่:

    /usr/local/Caskroom/android-sdk/{YOUR_SDK_VERSION_NUMBER}

  3. หาก SDK ถูกติดตั้งโดยอัตโนมัติเป็นส่วนหนึ่งของ Android Studio แสดงว่าอยู่ที่นี่:

    /Users/{YOUR_USER_NAME}/Library/Android/sdk

เมื่อคุณทราบตำแหน่งแล้วให้เปิดหน้าต่างเทอร์มินัลแล้วป้อนข้อมูลต่อไปนี้ (เปลี่ยนพา ธ ไปยัง SDK เพื่อติดตั้งอย่างไรก็ตาม):

export ANDROID_HOME={YOUR_PATH}

เมื่อคุณมีชุดนี้คุณจะต้องเพิ่มชุดนี้ลงในตัวแปรสภาพแวดล้อม PATH:

export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

ใช้การเปลี่ยนแปลงเหล่านี้ครั้งสุดท้ายโดยจัดหา. bash_profile อีกครั้ง:

source ~/.bash_profile

  1. ประเภท - echo $ ANDROID_HOME เพื่อตรวจสอบว่าบ้านถูกตั้งค่าไว้หรือไม่

echo $ANDROID_HOME


ฉันมีสิ่งนี้และยังคงมีข้อผิดพลาดเดียวกัน ส่งออก HOME = "/ ผู้ใช้ / โรเวอร์" ส่งออก ANDROID_HOME = "$ HOME / เอกสาร / Dev / Android / adt-bundle-mac-x86_64-20140702 / sdk" ส่งออก ANDROID_PLATFORM_TOOL / แพลตฟอร์มเครื่องมือ "=" $ ANDROID_HOME " ANDROID_HOME: $ ANDROID_PLATFORM_TOOLS: $ ANDROID_HOME / เครื่องมือสร้าง: $ PATH "ส่งออก ANT_HOME =" / usr / local / bin / ant "#export PATH =" $ PATH: $ ANT_HOME / bin " / ant $ ls / usr / local / bin / ant / usr / local / bin / ant $ ant -v Apache Ant (TM) เวอร์ชัน 1.9.4 $ Cordova --version 4.0.0 ข้อผิดพลาดคือ: node_modules / q / q js: 126 โยน e;
mylord

ดูคำตอบล่าสุดของ @ kip2 ด้านล่าง ... ( toolsไม่ใช้bin)
echo

export ANDROID_HOME=/Applications/ADT/sdk - คุณควรอธิบายความคิดนี้ ....
jww

4
เฮ้มันเริ่มต้นใหม่ทุกครั้ง ... ฉันจะเพิ่มมันอย่างถาวรบน Ubuntu ได้อย่างไร?
user1735921

7
หากใช้Brewคุณมีลิงค์ทั่วไปไปที่บ้านของ Android หากคุณตั้งค่า ANDROID_HOME = / usr / local / opt / android-sdk โดยไม่ต้องใช้หมายเลขรุ่นอธิบายในเส้นทาง
Valerio Crini

187

ในอาคารผู้โดยสาร:

nano ~/.bash_profile 

เพิ่มบรรทัด:

export ANDROID_HOME=/YOUR_PATH_TO/android-sdk
export PATH=$ANDROID_HOME/platform-tools:$PATH
export PATH=$ANDROID_HOME/tools:$PATH

ตรวจสอบว่ามันใช้งานได้:

source ~/.bash_profile
echo $ANDROID_HOME

1
สำหรับฉันด้วย BTW บรรทัดที่ 2 และ 3 สามารถเข้าร่วมได้export PATH=$ANDROID_HOME/platform-tools:$ANDROID_HOME/tools:$PATH
Jose_GD

ด้วยเหตุผลบางอย่างเมื่อฉันเรียกใช้echo $PATHจะไม่ส่งออก dirs ล่าสุดที่ฉันบันทึกไว้ใน. bash_profile
IgorGanapolsky

1
@ Maid786 มันอยู่ในโฟลเดอร์บ้าน แต่มองไม่เห็น คุณสามารถแสดง Invisibles ใน Finder ตามที่กล่าวไว้ที่นี่macworld.co.uk/how-to/mac-software/…หรือใช้โปรแกรมแก้ไขข้อความเช่น TextWrangler ที่มีตัวเลือกเพื่อแสดงไฟล์ที่มองไม่เห็นในกล่องโต้ตอบเปิดไฟล์
David Douglas

49

การเพิ่มสิ่งต่อไปนี้ใน. bash_profile ของฉันทำงานได้สำหรับฉัน:

export ANDROID_HOME=/Users/$USER/Library/Android/sdk
export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

2
จุดสำคัญที่ควรทราบว่าเส้นทางการติดตั้งคือ / Users / yourname / Library / Android / sdk
Nicholas Murray

35

อ้างคำตอบของ @ user2993582

export PATH=$PATH:$ANDROID_HOME/bin

ส่วน 'ถังขยะ' มีการเปลี่ยนแปลงและควรเป็น

export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

34

ฉันมีMac OS X (เซียร์) 10.12.2

ฉันตั้งค่าANDROID_HOMEให้ทำงานกับReact Native (สำหรับแอป Android) โดยทำตามขั้นตอนต่อไปนี้

  • เปิด Terminal (กดCommand + Rพิมพ์Terminalแล้วกดENTER )
  • เพิ่มต่อไปนี้3สายที่จะ~ / .bash_profile

    export ANDROID_HOME=$HOME/Library/Android/sdk/
    export PATH=$PATH:$ANDROID_HOME/tools
    export PATH=$PATH:$ANDROID_HOME/platform-tools
    
  • ในที่สุดก็รันคำสั่งด้านล่าง (หรือรีสตาร์ทระบบเพื่อสะท้อนการเปลี่ยนแปลงที่ทำ)

    source ~/.bash_profile

แค่นั้นแหละ.


2
@SteveLuck คุณสามารถสร้างมันได้หากยังไม่มี
Jeff LaFay

1
@SteveLuckหากคุณไม่พบให้สร้างโดยใช้touch ~ / .bash_profileจากนั้นจึงเพิ่มเนื้อหาของคุณที่นี่ คุณสามารถสร้างมันโดยตรงโดยใช้vi / vim ~ / .bash_profileจากนั้นวางบรรทัด ส่วนใหญ่คุณจะพบเพียง~ / .profileคุณสามารถเพิ่มได้ที่นี่เช่นกัน
hygull

3
@SteveLuck ~เป็นทางลัดสำหรับโฟลเดอร์บ้านของคุณ หากคุณไม่ทราบว่าโฟลเดอร์บ้านของคุณอยู่ที่ไหนให้พิมพ์cdบนเทอร์มินัล การพิมพ์ cd จะนำคุณไปยังโฟลเดอร์บ้านของคุณ จากนั้นคุณสามารถทำvi .bash_profileหรือnano .bash_profileเปิด / แก้ไขไฟล์
Mav55

ขอบคุณสำหรับการอัปเดตสิ่งที่คุณลองและได้รับ รองรับคำตอบ
hygull

11

ในการตั้งค่าANDROID_HOMEตัวแปรคุณต้องรู้วิธีติดตั้งการตั้งค่า Android dev

หากคุณไม่ทราบว่าคุณสามารถตรวจสอบว่ามีเส้นทางต่อไปนี้อยู่ในเครื่องของคุณหรือไม่ เพิ่มต่อไปนี้เพื่อ.bashrc, .zshrcหรือ.profileขึ้นอยู่กับสิ่งที่คุณใช้

หากคุณติดตั้งด้วยโฮมบรูว์

export ANDROID_HOME=/usr/local/opt/android-sdk

ตรวจสอบว่าเส้นทางนี้มีอยู่หรือไม่:

หากคุณติดตั้ง android studio ตามเว็บไซต์

export ANDROID_HOME=~/Library/Android/sdk

ในที่สุดเพิ่มไปยังเส้นทาง:

export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

หากคุณขี้เกียจเกินไปที่จะเปิดโปรแกรมแก้ไขให้ทำดังนี้

echo "export ANDROID_HOME=~/Library/Android/sdk" >> ~/.bashrc
echo "export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools" >> ~/.bashrc

10

ใครสามารถโพสต์วิธีแก้ปัญหาการทำงานสำหรับทำสิ่งนี้ใน terminal

ANDROID_HOME.androidมักจะเป็นไดเรกทอรีเช่น มันเป็นสิ่งที่ต้องการคีย์ Debug

export ANDROID_HOME=~/.android 

คุณสามารถทำให้มันเป็นอัตโนมัติสำหรับการเข้าสู่ระบบของคุณ เพียงเพิ่มลงในของคุณ.bash_profile(ด้านล่างมาจากเครื่อง OS X 10.8.5 ของฉัน):

$ cat ~/.bash_profile
# MacPorts Installer addition on 2012-07-19 at 20:21:05
export PATH=/opt/local/bin:/opt/local/sbin:$PATH

# Android
export ANDROID_NDK_ROOT=/opt/android-ndk-r9
export ANDROID_SDK_ROOT=/opt/android-sdk
export JAVA_HOME=`/usr/libexec/java_home`
export ANDROID_HOME=~/.android

export PATH="$ANDROID_SDK_ROOT/tools/":"$ANDROID_SDK_ROOT/platform-tools/":"$PATH"

จากข้อมูลของ David Turner ในรายการส่งเมล NDK ทั้งคู่ANDROID_NDK_ROOTและANDROID_SDK_ROOTจำเป็นต้องตั้งค่าเนื่องจากเครื่องมืออื่น ๆ ขึ้นอยู่กับค่าเหล่านั้น (ดูไดเรกทอรี NDK ที่แนะนำ? )

หลังจากแก้ไข~/.bash_profileแล้วให้ดำเนินการดังต่อไปนี้ (หรือออกจากระบบและเปิดอีกครั้ง):

source ~/.bash_profile

ฉันกำลังเผชิญกับปัญหาเดียวกัน แต่ไม่สามารถแก้ไขได้ คุณช่วยตรวจสอบคำถามนี้stackoverflow.com/questions/44891631/ …
Rocx

1

ผู้คนพึงทราบว่าถ้าคุณจะใช้~/.bash_profileมันจะไม่แก้ไขโปรไฟล์ทุบตีผู้ใช้ของคุณ แต่เป็นระดับโลก ให้ไปที่ไดเรกทอรีผู้ใช้ของคุณ (/ ผู้ใช้ / ชื่อผู้ใช้) และแก้ไขโดยตรง:

vim .bash_profile

และแทรกสองบรรทัดต่อไปนี้ตามที่เกี่ยวข้องกับชื่อผู้ใช้และไดเรกทอรี SDK ของคุณ

export PATH=$PATH:/Users/<username>/Library/Android/sdk/tools
export PATH=$PATH:/Users/<username>/Library/Android/sdk/platform-tools

2
คุณผิด. เส้นทางไฟล์ที่เริ่มต้นด้วย~/หมายความว่ามันเป็นไฟล์ในไดเรกทอรีบ้านของผู้ใช้
hmijail mourns ลาออก

~ หมายถึงบ้านของผู้ใช้ปัจจุบัน ดังนั้นในทางเทคนิคแล้วคำตอบนี้ผิด
Alexus

เพียงลบคำตอบนี้ หากต้องการพิสูจน์ให้ไปที่ไดเรกทอรีใด ๆ บนเครื่องของคุณจากนั้นพิมพ์cd ~; lsและดูสิ่งที่พิมพ์
ajacian81

1

ตั้งค่าANDROID_HOME , ตัวแปรสภาพแวดล้อมJAVA_HOMEในMac OS X

เพิ่มใน. bash_profileไฟล์

export JAVA_HOME=$(/usr/libexec/java_home)

export ANDROID_HOME=/Users/$USER/Library/Android/sdk

export PATH=${PATH}:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools

สำหรับการทดสอบ

echo $ANDROID_HOME
echo $JAVA_HOME

0

1) โปรไฟล์ฐานเปิด:

open  ~/.bash_profile

2) เพิ่มบรรทัดด้านล่างในโปรไฟล์ฐาน:

export PATH=${PATH}:/Users/<username>/Library/Android/sdk/build-tools/27.0.3

บันทึกและปิดโปรไฟล์ฐาน

สำหรับฉัน 27.0.3 ทำงานได้ดี


0

คำตอบที่ถูกต้องมากมายที่นี่ อย่างไรก็ตามมีรายการหนึ่งหายไปและฉันไม่สามารถเรียกใช้โปรแกรมจำลองจากบรรทัดคำสั่งหากไม่มี

export JAVA_HOME=$(/usr/libexec/java_home)
export PATH=$PATH:$JAVA_HOME/bin

export ANDROID_HOME=$HOME/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/emulator       # can't run emulator without it
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/platform-tools

ดังนั้นจึงเป็นการรวบรวมคำตอบข้างต้นบวกกับทางออกสำหรับปัญหานี้

และถ้าคุณใช้zsh(แทนbash) ~/.zshrcไฟล์ที่จะแก้ไขคือ

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