我下载了最新的Android SDK工具24.4.1版本。我使用命令行安装sdk。有人问我时,我输入了y
您是否接受许可证'android-sdk-license-c81a61d9' [y/n]: y
安装成功之后。
但是当使用Gradle 3.1进行构建时,会显示如下内容
您没有接受以下SDK组件的许可协议:
[Android SDK Platform 23, Android SDK Build-Tools 23.0.1]。
在构建项目之前,您需要接受许可协议,并使用Android Studio SDK管理器完成缺失组件的安装。
或者,要了解如何将许可协议从一个工作站转移到另一个工作站,请访问http://d.android.com/r/studio-ui/export-licenses.html
我检查了~/。android和android工具所在的/opt/android-sdk。两者都不包含名为license的文件夹。
我已经通过使用命令解决了这个问题:
转到:C:\Users\ [PC NAME] \AppData\Local\Android\sdk\tools\bin\(如果该文件夹不可用,请先下载Android sdk,或
你可以从android studio安装过程中安装它。)
Shift+左键单击并按W,然后Enter打开CMD在文件夹路径
输入cmd: sdkmanager——licenses
一旦按下enter,您需要通过y接受所有的许可证
检查license
打开:C:\Users\ [PC NAME] \AppData\Local\Android\sdk\
检查名为licenses的文件夹
android-googletv-license
android-sdk-license
android-sdk-preview-license
google-gdk-license
intel-android-extra-license
mips-android-sysimage-license
作为新的更新文件夹路径(当前Android Studio)
打开Android Studio,工具> Sdk管理器> Android Sdk命令行工具(只需选择加入)
SDKManager将存储在:
打开C:\Users\ [PC NAME] \AppData\Local\Android\Sdk\cmdline-tools\latest\bin
输入cmd: sdkmanager——licenses
使用Android SDK的文档:https://developer.android.com/studio/command-line/sdkmanager.html
从命令行接受许可协议的方式已经改变。你可以使用位于$ANDROID_SDK_ROOT/tools/bin的SDK管理器
例如在linux上:
cd ~/Library/Android/sdk/tools/bin/
运行sdkmanager:
./sdkmanager --licenses
在Windows上:
cd /d "%ANDROID_SDK_ROOT%/tools/bin"
运行sdkmanager:
sdkmanager --licenses
并接受您尚未接受(但需要)的许可。
要了解更多细节,请参阅Android Studio文档,尽管当前文档缺少关于——licenses选项的任何描述。
警告
你的机器上可能有两个Android sdk。确保检查~/Library/Android/sdk和/usr/local/share/ Android -sdk!如果不确定,请从您的机器上完全卸载Android Studio,重新开始。
更新:ANDROID_HOME已弃用,ANDROID_SDK_ROOT现在是正确的变量
打开$ANDROID_HOME/tools/bin目录
然后启动CMD
./sdkmanager --licenses
接受列出的所有许可证。
在这之后,进入sdk中的许可证文件夹,检查它是否有以下五个文件:
android-sdk-license, android-googletv-license, android-sdk-preview-license, google-gdk-license, mips-android-sysimage-license
给予重试和再次构建,仍然詹金斯给予“许可不接受”,然后你必须给予你的“sdk”目录和所有它的父目录的完全权限。命令如下:
sudo chmod -R 777 /opt/
如果你在/opt/目录下有sdk。