如何在 Android Studio 中使用最新的 gradle 版本
Posted
技术标签:
【中文标题】如何在 Android Studio 中使用最新的 gradle 版本【英文标题】:How to use the latest gradle version in Android Studio 【发布时间】:2016-07-02 13:51:04 【问题描述】:我刚刚注意到 Gradle 有 released version 2.12,根据发行说明,脚本的编译速度应该提高 20%。我想在 android Studio 中升级到那个版本。
我正在使用 v1.5.1 并且在设置中我选择了“使用默认 gradle 包装器”选项,这意味着不是为每个项目使用本地 gradle 安装,而是为每个项目使用特定的 gradle 版本项目。使用的版本是build.gradle
文件中定义的版本。示例:
buildscript
repositories
jcenter()
dependencies
classpath 'com.android.tools.build:gradle:1.5.0'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
现在如果我把它改成这样:
classpath 'com.android.tools.build:gradle:2.12'
然后 Android Studio 找不到该版本并引发错误。显然,AS 首先尝试在本地缓存中查找二进制文件(Android Studio/gradle/m2repository),然后尝试从 bintray 下载它:
https://jcenter.bintray.com/com/android/tools/build/gradle/2.12/gradle-2.12.jar
浏览published builds,这里可用的最后一个版本似乎是 v2.1.0-alpha1。
为什么 v2.12 还没有在 bintray 中?不兼容 Android Studio 吗? 如果兼容,有没有办法下载它并在每个项目的基础上使用本地安装? (我不想破坏已经在版本控制中的旧项目)【问题讨论】:
检查this updated answer 从here 中找到将在gradle-wrapper.properties
中使用的最新版本的 Gradle
【参考方案1】:
对于 AS 2
最新的插件是:
[ ![下载]1]2
classpath 'com.android.tools.build:gradle:[INSERT LATEST HERE]'
对于 AS 3
您应该更新存储库以包含 google()
,您还需要 gradle > 4.1 并且最新版本在这里:
https://developer.android.com/studio/releases/gradle-plugin.html
在撰写本文时:
buildscript
repositories
// Gradle 4.1 and higher include support for Google's Maven repo using
// the google() method. And you need to include this repo to download
// Android plugin 3.0.0 or higher.
google()
...
dependencies
classpath 'com.android.tools.build:gradle:3.3.0'
【讨论】:
不错的一个!比 12 岁的帖子好多了 你确定吗?该图像当前显示“2.3.3”,而developer.android.com/studio/releases/gradle-plugin.html 包含文本classpath 'com.android.tools.build:gradle:3.0.1'
他们已经开始使用他们自己的 maven repo...我会看看我能做什么。
@weston 您是否知道是否可以在 Android Studio 中使用比随附版本更新的 Gradle 版本?例如,我用 AS 3.2 尝试了 Gradle 5.0,但它同步失败,错误/异常不清楚。还是 Android Studio 应该只适用于旧版本?我找不到任何确认其中一个或另一个的文档。
@Zingam 我会先看看它是否在命令行上工作。例如'./gradlew assembleDebug' 我希望你会看到同样的错误。【参考方案2】:
com.android.tools.build:gradle
是 android 的 gradle 插件。它与 gradle 分布不同。有关 gradle android 插件的发布/版本信息,请参见此处:https://maven.google.com/web/index.html?q=gradle#com.android.tools.build:gradle
要更改插件使用的 gradle 版本,请编辑文件:
<Project>/gradle/wrapper/gradle-wrapper.properties
并将这一行更改为您想要的 gradle 版本:
distributionUrl=http\://services.gradle.org/distributions/gradle-2.12-all.zip
然后重建你的项目。
请记住,您使用的 android 插件版本可能尚未使用这个全新的 gradle 版本进行测试,并且可能会导致意外问题。
android gradle 插件到 2020 年 2 月的 Gradle 版本兼容性
Plugin version Required Gradle version
-- --
1.0.0 - 1.1.3 2.2.1 - 2.3
1.2.0 - 1.3.1 2.2.1 - 2.9
1.5.0 2.2.1 - 2.13
2.0.0 - 2.1.2 2.10 - 2.13
2.1.3 - 2.2.3 2.14.1+
2.3.0+ 3.3+
3.0.0+ 4.1+
3.1.0+ 4.4+
3.2.0 - 3.2.1 4.6+
3.3.0 - 3.3.2 4.10.1+
3.4.0 - 3.4.1 5.1.1+
3.5.0 - 3.5.3 6.0.1+
3.6.0+ 6.0.1+
【讨论】:
有没有办法知道哪些 gradle 版本与插件兼容?我在您链接的页面中看不到任何内容。 嗯,他们确实在插件发行说明中告诉您要使用的最低 gradle 版本是什么。对于 1.5.0,最低 gradle 版本显然是 2.2.1 他们并没有说在事情破裂之前你能走多高。请参阅此处:developer.android.com/tools/revisions/gradle-plugin.html 另请参阅此处的“Gradle 要求”部分:tools.android.com/tech-docs/new-build-system/… Bintray 已不复存在。【参考方案3】:除了上述(更改 distibitionURL)之外,对我有用的是在 build.gradle (Modile:app) 中将我的类路径保持为 2.0.0:
classpath 'com.android.tools.build:gradle:2.0.0'
在文件 > 项目结构 > 项目中:将“Gradle 版本”更改为 2.12
在文件 > 设置 > 构建、执行、部署 > 构建工具 > Gradle 中: 在“项目级设置”部分下,有 2 个选项:
使用默认的 gradle 包装器(推荐)
从http://gradle.org/post-download-gradle/下载gradle-2.12-all.zip 然后选择“使用本地 gradle 分发”并映射“Gradle home:”即 C:/Gradle/gradle-2.12
请注意,选项 2 将要求您下载每个 gradle 版本更新。
【讨论】:
【参考方案4】:如果你想使用最新的,你不能使用默认的 gradle wrapper,你必须去设置,检查“使用可自定义的 gradle wrapper”,然后在
Project/gradle/wrapper/gradle-wrapper.properties
distributionUrl
值
distributionUrl=https\://services.gradle.org/distributions/gradle-2.12-bin.zip
【讨论】:
我有点迷路了。我在 gradle 设置中看不到任何“使用可自定义的 gradle 包装器”选项。您的意思是“使用本地 gradle 分发”吗? 不,截图就在那里。 您必须使用 AS 2 测试版。我还在 1.5.1 实际上只是使用普通的 IntelliJ。 所以这个选项使用了一个自定义的 gradle 版本,但只适用于项目,对吧?【参考方案5】:试试这个:- 根据 gradle-wrapper.properties 中的最新版本更改此 url,然后更改 gradle。
distributionUrl=https\://services.gradle.org/distributions/gradle-2.9-all.zip
希望对你有帮助 谢谢
【讨论】:
以上是关于如何在 Android Studio 中使用最新的 gradle 版本的主要内容,如果未能解决你的问题,请参考以下文章
Android:如何在 android studio 中配置 FFMPEG 最新版本?
如何在 android studio 项目中导入最新的 Paypal sdk?
如何在Android Studio里设置Build Tool版本