您尚未接受以下SDK组件的许可协议[重复]

问题描述 投票:325回答:15

这个问题在这里已有答案:

我下载了最新的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 Manager完成缺少的组件的安装。或者,要了解如何将许可协议从一个工作站转移到另一个工作站,请转到http://d.android.com/r/studio-ui/export-licenses.html

我检查了~/.android/opt/android-sdk放置Android工具的地方。两者都不包含名为licenses的文件夹。

android android-studio gradle android-sdk-tools
15个回答
640
投票

从命令行接受许可协议的方式已更改。您可以使用位于以下位置的SDK管理器:$ANDROID_HOME/tools/bin

E.他Linux:

~/Library/Android/sdk/tools/bin

运行sdkmanager如下:

./sdkmanager --licenses

例如Vindovs:

cd "%ANDROID_HOME%"/tools/bin

运行sdkmanager如下:

sdkmanager --licenses

并接受您尚未接受的许可(但需要)。

有关更多详细信息,请参阅Android Studio documentation,尽管当前文档中缺少有关--licenses选项的任何说明。

警告

您的计算机上可能有两个Android SDK。一定要检查~/Library/Android/sdk/usr/local/share/android-sdk!如果不确定,从你的机器完全uninstall Android Studio,并开始一个干净的石板。


13
投票

也许我迟到了,但这有助于我接受OSX的SDK许可,

如果安装了android SDK工具,请运行以下命令

~/Library/Android/sdk/tools/bin/sdkmanager --licenses

y接受所有许可证

瞧!您已经接受了SDK许可证,并且很好用。


12
投票

如果您想使用IDE接受许可证,我还发现打开Android Studio并创建一个新的基本项目以触发许可协议变得很容易。创建项目后,我提出了以下许可对话框,我需要同意:

enter image description here

我完整记录了以下帖子中的信息:Accepting the Android SDK License via Android Studio


7
投票

您可以通过启动Android Studio接受许可协议,然后转到:

帮助>检查更新...

当您安装更新时,它会要求您接受许可协议。接受许可协议并安装更新,您就完成了所有设置。


7
投票

在linux中

 1. Open a terminal
 2. Write: "cd $ANDROID_HOME/tools/bin (this path can be /home/your-user/Android/Sdk/tools/bin)"
 3. Write: "./sdkmanager --licenses"
 4. To accept All licenses listed, write: "y"
 5. Ready!

如果您正在使用Ionic Framework构建应用程序,请再次编写命令来构建它。


1
投票

如果你有一个React Native应用程序的问题,除了上面提到的步骤,请确保你的应用程序的android目录(AppName / android)中有local.properties文件指向你的'sdk'目录:

sdk.dir=/PATH_TO_SDK/

-1
投票

我通过以下步骤解决了这个问题:

  1. 使用命令“tools / android update sdk --no-ui”更新android sdk
  2. 得到jenkins机器上的android sdk文件夹,创建“licenses”文件夹
  3. 创建名为“android-sdk-license”的文件并从开发机器粘贴许可证

143
投票

您可以通过以下两种方式安装和接受SDK和工具的许可:

1.通过命令行打开Android SDK Manager GUI

使用以下命令通过命令行打开Android SDK管理器:

# Android SDK Tools 25.2.3 and lower - Open the Android SDK GUI via the command line
cd ~/Library/Android/sdk/tools && ./android

# 'Android SDK Tools' 25.2.3 and higher - `sdkmanager` is located in android_sdk/tools/bin/.
cd ~/Library/Android/sdk/tools/bin && ./sdkmanager

View more details on the new sdkmanager

选择并安装所需的工具。 (您的位置可能不同)

2.通过命令行安装并接受android许可证:

通过命令行更新软件包,您将看到您需要接受的条款和条件。

- Install or update to the latest version

这将在您运行时安装最新的platform-tools

# Android SDK Tools 25.2.3 and lower. Install the latest `platform-tools` for android-25
android update sdk --no-ui --all --filter platform-tools,android-25,extra-android-m2repository

# Android SDK Tools 25.2.3 and higher
sdkmanager --update

- Install a specific version (25.0.1, 24.0.1, 23.0.1)

您还可以安装特定版本,如下所示:

# Build Tools 23.0.1, 24.0.1, 25.0.1
android update sdk --no-ui --all --filter build-tools-25.0.1,android-25,extra-android-m2repository
android update sdk --no-ui --all --filter build-tools-24.0.1,android-24,extra-android-m2repository
android update sdk --no-ui --all --filter build-tools-23.0.1,android-23,extra-android-m2repository
# Alter the versions as required                      ↑               ↑

# -u --no-ui  : Updates from command-line (does not display the GUI)
# -a --all    : Includes all packages (such as obsolete and non-dependent ones.)
# -t --filter : A filter that limits the update to the specified types of
#               packages in the form of a comma-separated list of
#               [platform, system-image, tool, platform-tool, doc, sample,
#               source]. This also accepts the identifiers returned by
#               'list sdk --extended'.

# List version and description of other available SDKs and tools
android list sdk --extended
sdkmanager --list

105
投票

去你的$ANDROID_HOME/tools/bin并开火

./sdkmanager --licenses

接受那里列出的所有许可。

在此之后,只需转到sdk中的licenses文件夹并检查它是否包含以下五个文件:

android-sdk-license, android-googletv-license, android-sdk-preview-license, google-gdk-license, mips-android-sysimage-license

重新进行重试并重新构建,仍然jenkins提供“许可证不被接受”然后你必须完全允许你的'sdk'目录及其所有的父目录。这是命令:

sudo chmod -R 777 /opt/

如果你在/ opt /目录中有sdk。


42
投票

对于没有使用Android Studio的Windows用户:

  1. 转到sdkmanager.bat文件的位置。默认情况下,它位于Android\sdk\tools\bin文件夹内的%LOCALAPPDATA%
  2. 通过在标题栏中键入cmd打开终端窗口
  3. 类型 sdkmanager.bat --licenses
  4. 使用'y'接受所有许可

31
投票

更新macOS Sierra 10.12.6 - Android Studio for Mac 2.3.3

通常在以下位置找到sdkmanager文件:

/Users/YOUR_MAC_USER/Library/Android/sdk/tools/bin

./sdkmanager --licenses

警告:无法加载File /Users/mtro.josevaler**strong text**io/.android/repositories.cfg。不接受6个SDK包许可证中的6个。查看尚未接受的许可证(是/否)? ÿ

要验证问题,只需重复执行许可证问题所涉及的操作。


18
投票

我通过打开Android SDK Manager并为其抱怨的版本安装SDK构建工具来解决了这个问题(API 24)。

我之前也使用命令行进行了更新,我怀疑Android SDK Manager有更完整的方法来解决依赖关系,包括许可证。


14
投票

当我运行cordova build android时,我遇到了这个错误

我通过触发./sdkmanager --licenses并接受所有许可来解决了这个问题。

  1. 你在路径中的android sdk文件夹下有一个sdkmanager.bat:android / sdk / tools / bin
  2. 触发在android / sdk / tools / bin中打开命令提示符
  3. 输入./sdkmanager --licenses并输入
  4. 按y查看所有许可证,然后按y接受所有许可证

14
投票

我通过使用命令解决了该问题:

  1. 转到:C:\ Users [PC NAME] \ AppData \ Local \ Android \ sdk \ tools \ bin \(如果该文件夹不可用,请首先下载android SDK,或者您可以从android studio安装过程安装它。 )
  2. Shift +左键单击并按W,然后按Enter键以在文件夹路径上打开CMD
  3. 键入cmd:sdkmanager --licenses
  4. 按Enter后,您需要按y接受所有许可

检查许可证

  1. 转到:C:\ Users [PC NAME] \ AppData \ Local \ Android \ sdk \
  2. 检查名为licenses的文件夹
android-googletv-license
android-sdk-license
android-sdk-preview-license
google-gdk-license
intel-android-extra-license
mips-android-sysimage-license

使用命令测试CORDOVA:

cordova构建android

使用Android SDK的文档:https://developer.android.com/studio/command-line/sdkmanager.html


14
投票

我有一个类似的问题,但./sdkmanager - 许可证没有用。我按照这个帖子和“obladors”评论给了我解决方案:https://github.com/oblador/react-native-vector-icons/issues/527

最终解决了我的问题是:运行./sdkmanager "build-tools;23.0.1"

随您的版本更改23.0.1

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.