苹果硅Mac安装Android Studio后遇Build-Tools 30.0.3许可未接受及sdkmanager报错如何解决
修复方案
错误原因说明
- 第一个报错是因为本地未接受Android SDK Build-Tools 30.0.3的使用许可
- 第二个
sdkmanager运行报错是因为当前命令行环境调用的Java版本高于8,高版本Java移除了sdkmanager依赖的JAXB相关类库
修复步骤
方法一:通过Android Studio图形界面直接接受许可(最简单,无需命令行操作)
- 打开Android Studio,进入
Preferences > Appearance & Behavior > System Settings > Android SDK - 切换到
SDK Tools标签页,勾选右下角的Show Package Details - 找到
Android SDK Build-Tools展开,勾选30.0.3版本,点击Apply - 弹出许可协议窗口后,选择
Accept等待安装/许可确认完成即可,无需额外操作。
方法二:命令行修复(需要先解决sdkmanager的Java版本问题)
- 先临时指定sdkmanager使用Android Studio自带的兼容Java环境运行,苹果硅Mac下Android Studio自带Java的默认路径为:
/Applications/Android Studio.app/Contents/jre/Contents/Home - 用以下命令运行sdkmanager接受所有许可:
JAVA_HOME=/Applications/Android\ Studio.app/Contents/jre/Contents/Home /Users/你的用户名/Library/Android/sdk/cmdline-tools/latest/bin/sdkmanager --licenses
注意把路径里的「你的用户名」替换成你Mac的实际用户名,如果你自定义了SDK安装路径,也要对应调整sdkmanager的路径
- 运行后按提示输入
y确认所有许可即可。
后续优化(可选)
如果需要经常在命令行使用sdkmanager,可以在你的shell配置文件(~/.zshrc 或者 ~/.bash_profile)里添加别名,避免每次都指定JAVA_HOME:
alias sdkmanager='JAVA_HOME=/Applications/Android\ Studio.app/Contents/jre/Contents/Home /Users/你的用户名/Library/Android/sdk/cmdline-tools/latest/bin/sdkmanager'
添加后执行source ~/.zshrc(对应zsh)或者source ~/.bash_profile(对应bash)生效,之后直接运行sdkmanager相关命令就不会报Java相关错误了。
内容的提问来源于stack exchange,提问作者Scorb
相关产品推荐
相关产品推荐

