【发布时间】:2017-01-29 16:42:25
【问题描述】:
有这个线程 (Automatically accept all SDK licences) 和现已弃用的库 (https://github.com/JakeWharton/sdk-manager-plugin) 解决了更新(CI 服务器)系统的问题,这些系统解决了这个问题,但不再需要它们......
在当前版本的 android-tools(我认为是 v2.2.0 之后)中,gradle 会自动下载所需的 SDK、构建工具等(这会很棒)。
在我的情况下,gradle 似乎为我下载了一个新的 build-tools-version(因为我更改了代码中的依赖项)但它停止了,因为我没有接受许可证。
* 出了什么问题:
配置项目 ':app' 时出现问题。
> 您尚未接受以下 SDK 组件的许可协议:
[Android SDK Build-Tools 24.0.2].在构建项目之前,您需要接受许可协议并使用 Android Studio SDK 管理器完成缺失组件的安装。
或者,要了解如何将许可协议从一个工作站转移到另一个工作站,请访问http://d.android.com/r/studio-ui/export-licenses.html
~ 问题是,我需要做什么才能完成这项工作?
PS:这是我在 CI 服务器上的调用:
./gradlew clean assembleDebug
【问题讨论】:
-
The instructions 看起来相当简单。你遇到什么问题?您没有 CI 服务器上
licenses/目录的写入权限吗? -
如果我做对了,许可证可能会在每次更新时更改,因此它会再次停止。我正在寻找“gradlew”的某种参数,例如“自动下载 SDK 时自动接受许可证”。
-
Google 极不可能提供此恕我直言。
-
所以当我手动构建时它会下载所需的东西很好,但我不能在我的 CI 服务器上使用它,对吗?
-
我尝试了
echo "y"的东西,但它不起作用。它给了我一个Unknown response ''。在另一个问题中,有一条评论说会有一个标志--accept-license,但它似乎仍然不可用。因此,如果不手动处理许可证,这里就没有进展(顺便说一句:ubuntu 上的license-文件夹在哪里)?
标签: android gradle download sdk licensing