报错信息
分析:
“Gradle version 2.2 is required. Current version is 2.10.try editing the distributionUrlin/MyApplication/gradle/wrapper/gradle-wrapper.properties to gradle-2.2-all.zip.”
这到底是啥意思呢?
简单解释一下:“根据你的AS的Gradle插件版本,与你匹配的Gradle版本是2.2,但是你当前的Gradle版本是2.10.请尝试将Gradle系统版本改为gradle-2.2-all.zip”
先理清下Gradle版本的概念:
Gradle version: Gradle是一种自动化建构工具(例如Ant 、Maeven也是构建工具),Gradle version就是指这种构建工具的版本号。可以在你项目根目录的gradle/wrapper/gradle-wrapper.properties里指定。指定后AS会自动去下载或者你也可以去Gradle官网下载相应的版本放到/Users/你的用户名/.gradle/wrapper/dists目录下
Android Plugin Version : 是指你Android Studio里的gradle插件版本。在你项目根目录下的build.gradle文件中的dependencies节点下设置。
而我的AS Gradle插件版本我设置的是1.2.3,Gradle构建工具的版本是2.10.
Android Plugin Version和Gradle version是有对应关系的,Plugin版本太低了,所以gradle 2.10是不支持 1.2.3版本的plugin。
三种解决方案:
一 根据报错信息里建议的:降低 Gradle版本到2.2
- 下载gradle-2.2-all.zip
如果让 AS自动去下载 gradle-2.2-all.zip实在是太慢了!
所以将https://services.gradle.org/distributions/gradle-2.2-all.zip 这个网址拖到迅雷把它下载好,然后放到/Users/你的用户名/.gradle/wrapper/dists目录下 - 进入AS的设置中,设置使用默认的gradle wrapper来管理gradle
3.进入项目根目录的gradle/wrapper/gradle-wrapper.properties里
修改为
distributionUrl=https://services.gradle.org/distributions/gradle-2.2-all.zip
4.选择 File—>invalidate and restart
5.耐心等待一会
发现会弹框提醒你升级 插件版本Android Gradle Plugin
先忽略。然后就可以运行程序了。
修改后各版本匹配关系:
Android Studio版本是 2.1
Plugin version 是 1.2.3
Gradle version是 2.2
二 提高 plugin 版本
- 修改根目录下 build.gradle文件中的plug 版本,改为>=1.5.0:
classpath 'com.android.tools.build:gradle:1.5.0’或者2.0.0或2.1.0 - 修改gradle wrapper中的
distributionUrl=https://services.gradle.org/distributions/gradle-2.10-all.zip
- 这时候不要点击Sync Now
- 选择 File—>invalidate and restart
- 让它加载1分钟左右就好了。
修改后各版本匹配关系:
Android Studio版本是 2.1
plugin version 是 >=1.5.0
gradle version是 2.10
三 灵活配置
比如我们团队用的版本是:plugin1.2.3 , gradle构建工具2.4
为了保持一致,所以我又不得不
- 下载gradle-2.4-all.zip扔到/Users/你的用户名/.gradle/wrapper/dists/目录下
- 修改gradle wrapper.properties 文件,将url改为gradle-2.4-all.zip
- File—> invalidate and restart
- 进入AS的设置中,设置use default gradle wrapper来管理gradle
修改后各版本匹配关系:
Android Studio版本是 2.1
plugin version 是 1.2.3
gradle version是 2.4