折腾:
【未解决】macOS中安装安卓开发工具aapt
期间,已在macOS中安装好了安卓的command line tools了。然后去运行sdkmanager,结果报错:
crifanli@crifanlideMac ~/dev/DevTools/android/tools/bin ./sdkmanager --update Warning: Could not create settings java.lang.IllegalArgumentException at com.android.sdklib.tool.sdkmanager.SdkManagerCliSettings.<init>(SdkManagerCliSettings.java:428) at com.android.sdklib.tool.sdkmanager.SdkManagerCliSettings.createSettings(SdkManagerCliSettings.java:152) at com.android.sdklib.tool.sdkmanager.SdkManagerCliSettings.createSettings(SdkManagerCliSettings.java:134) at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:57) at com.android.sdklib.tool.sdkmanager.SdkManagerCli.main(SdkManagerCli.java:48) Usage: sdkmanager [--uninstall] [<common args>] [--package_file=<file>] [<packages>...] sdkmanager --update [<common args>] sdkmanager --list [<common args>] sdkmanager --licenses [<common args>] sdkmanager --version 。。。
还有其他错误
sdkmanager Warning: Could not create settings
去参考前面的答案去操作
找个目录,用于:ANDROID_SDK_ROOT
然后去下载和解压:commandlinetools zip,到ANDROID_SDK_ROOT下面的某个目录,比如:cmdline-tools,注意不要叫:tools,会和默认的tools有冲突
再把 $ANDROID_SDK_ROOT/cmdline-tools/tools/bin 加到PATH中,即可
去操作:

vi ~/.zshrc
加上:
export ANDROID_SDK_ROOT=/Users/crifanli/dev/DevTools/android/sdk_root export PATH=$PATH:$ANDROID_SDK_ROOT/cmdline_tools/tools/bin
生效:
source ~/.zshrc
去看看效果:
cd ~/dev/DevTools crifanli@crifanlideMac ~/dev/DevTools which sdkmanager /Users/crifanli/dev/DevTools/android/sdk_root/cmdline_tools/tools/bin/sdkmanager
是可以的。
然后再去试试,问题依旧。
感觉是:ANDROID_SDK_ROOT中缺少安卓 sdk的真正内容?
结果是:好像必须叫做:cmdline-tools
之前以为是回答者自己随便起的名字,所以为了目录名便于识别,不带短横线,才改为:cmdline_tools
所以去把
cmdline_tools
改为
cmdline-tools
cat ~/.zshrc ... export ANDROID_SDK_ROOT=/Users/crifanli/dev/DevTools/android/sdk_root export PATH=$PATH:$ANDROID_SDK_ROOT/cmdline-tools/tools/bin
以及:
~ echo $PATH .:/Users/crifanli/.pyenv/shims:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Java/JavaVirtualMachines/jdk1.8.0_212.jdk/Contents/Home/bin:/Users/crifanli/dev/DevTools/android/sdk_root/cmdline-tools/tools/bin
确保路径正确:
crifanli@crifanlideMac ~ which sdkmanager /Users/crifanli/dev/DevTools/android/sdk_root/cmdline-tools/tools/bin/sdkmanager
然后即可正常使用:
crifanli@crifanlideMac ~ sdkmanager --update [=======================================] 100% Computing updates... crifanli@crifanlideMac ~
【总结】
此处macOS中,虽然之前已下载和安装了安卓的command line的tools,解压得到了sdkmanager了,但是运行报错:
~/dev/DevTools/android/tools/bin ./sdkmanager --update Warning: Could not create settings
原因:
sdkmanager即安卓的command line tools的bug
解决办法:
1.找个目录,用作:ANDROID_SDK_ROOT
比如此处是:
/Users/crifanli/dev/DevTools/android/sdk_root
2.在ANDROID_SDK_ROOT下面新建一个目录,名字(只能)叫做:cmdline-tools
3.把下载到的安卓的commandline tools的zip文件解压得到的tools文件夹,放到cmdline-tools中
比如从
下载得到的
commandlinetools-mac-6609375_latest.zip
解压后,就只有一个tools文件夹
放到cmdline-tools后是:
/Users/crifanli/dev/DevTools/android/sdk_root/cmdline-tools/tools
4.添加环境变量到启动脚本
把ANDROID_SDK_ROOT和sdkmanager所在路径
此处是:
export ANDROID_SDK_ROOT=/Users/crifanli/dev/DevTools/android/sdk_root export PATH=$PATH:$ANDROID_SDK_ROOT/cmdline-tools/tools/bin
放到此处启动脚本
~/.zshrc
中最后,即可。
之后即可正常,在任何目录中使用sdkmanager了。
转载请注明:在路上 » 【已解决】macOS中运行sdkmanager报错:Warning Could not create settings