2013-11-28 62 views
5

我正在嘗試執行的操作:在Mac OSX上安裝Android構建工具,以便我可以使用aapt命令來關閉/處理一些圖像測試無法運行aapt命令 - 繼續返回「Android SDK構建工具」

我所做的:

  1. 使用BREW
  2. 運行android命令,彈出SDK Manager安裝的Android SDK中
  3. 使用管理器來安裝SDK工具(22.3),SDK平臺工具(19),SDK構建工具(19)和Android 4.4
  4. 我已驗證在使用工具時已將該工具添加到默認位置釀造。

會發生什麼: 運行aaptaapt v總是返回Use the 'android' tool to install the "Android SDK Build-tools".

我也嘗試使用android update更新的工具,但它仍然無法工作。

編輯: 運行到aapt v作品的完整路徑。我現在假設我的PATH有問題,我仍然需要解決

接下來要嘗試的任何線索將不勝感激。

回答

22

我敢肯定,Android SDK不會嘗試修改您的PATH變量。如果您希望能夠在不指定完整路徑的情況下運行SDK工具,則需要逐個將包含它們的文件夾添加到您的PATH中。

您可以通過編輯您的~/.bash_profile並添加一行像這樣(或編輯現有行這樣的,如果你有一個的話)這樣做:

export PATH="$PATH:/PATH/TO/android-sdk-macosx/build-tools/17.0.0" 

或者,你可以指定的完整路徑調用工具時,就像這樣:

/PATH/TO/android-sdk-macosx/build-tools/17.0.0/aapt v 

我不知道這個曾經與aapt發生,但是這可能是如果安裝工具的多個版本,以消除歧義有用。要查看的bash解析爲一個命令的哪個版本,通常可以通過運行which,像這樣找出:

which aapt 

編輯

已經有一些很好的意見對這個答案包括Jared's excellent suggestion to dynamically add the latest build-tools to the path。我在純粹的3.x bash中重新實現了他的代碼,這裏是我的~/.bash_profile中的當前代碼。首先,確保設置ANDROID_HOME

export ANDROID_HOME="$HOME/Library/Android/sdk" #Set this to the path to your Android SDK if it's not in the default location 

然後(如果你使用bash):

BUILD_TOOLS=($ANDROID_HOME/build-tools/*) 
ANDROID_LATEST_BUILD_TOOLS="${BUILD_TOOLS[@]:(-1)}" 
export PATH="$PATH:$HOME/bin:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$ANDROID_LATEST_BUILD_TOOLS" 

另外,這裏是一個POSIX版本應該在任何shell工作:

ANDROID_LATEST_BUILD_TOOLS=$(ls -r ${ANDROID_HOME}/build-tools|head -1) 
export PATH="$PATH:$HOME/bin:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$ANDROID_HOME/build-tools/$ANDROID_LATEST_BUILD_TOOLS" 
+0

我認爲你在談論某件事;運行'which'告訴我另一個'aapt'的例子。我會嘗試刪除它,看看是否可以解決我的問題。 – Dre

+0

非常好:'哪個aapt'顯示它試圖從錯誤的位置運行命令(大概工具必須安裝在某個點的不同位置然後刪除,但別名保留)。按照描述刪除別名並更新'〜/ .bash_profile'。 這是我第一次遇到'哪個';這是一個方便的命令。謝謝! – Dre

+2

我發現將構建工具版本作爲獨立變量存儲在我的配置文件中很有幫助。例如... export ANDROID_BUILD_TOOLS_VERSION = 22.0.1 ...所以你可以很容易地指向一個不同的版本,而不需要直接改變PATH和其他變量... export ANDROID_BUILD_TOOLS_HOME = $ ANDROID_SDK_HOME/build-tools/$ ANDROID_BUILD_TOOLS_VERSION ... export PATH = $ PATH:$ ANDROID_SDK_TOOLS_HOME:$ ANDROID_BUILD_TOOLS_HOME ...等 –