the android gradle plugin version is too old 解决方法

最近几天把android studio的版本升级到2.3的版本后,发现新建的项目编译不通过。提示什么错呢?如下图所示

插件版本2.3.0- alpha2太老了??但是2.3版本也不老啊,因为IDE的版本也才2.3.那这个问题到底是什么引起的呢?

我们先明白插件版本指的是什么。

在android studio中,控制编译时采用gradle哪个版本的文件叫gradle-wrapper.properties,里面比如说定义了

 

distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip
 
那么这时候就用2.14版本的gradle去构建项目。
 
distributionUrl告诉我们下载使用的是哪个版本的gradle
而plugin version是指gradle插件的版本号,具体在build.gradle当中定义,如下图所示:
 
这个问题是由于系统找不到2.3.0 - alpha2 这个插件版本号造成的,于是我们把这个2.3.0-alpha2 改成 2.3.0就行了。

修改方法:File—>Project Struct->Project  把 Gradle Plugin Version 改成2.3.0

这时候再重新跑一下,发现又直接报错了

原来google 这个gradle plugin version 和 gadle version 之间有对应关系,就是要求如果我用2.3的plugin version,那么这个gradle version就必须在3.3以上。

问题原因很明显,那解决办法有两个,一个是用3.3的gradle version,另外一个就是讲plugin version降低到2.2 。

对应关系可以参考一下这篇文章http://blog.csdn.net/zouchengxufei/article/details/60983106

好的,我这里选择把gradle plugin version降低为2.2 以后 ,发现编译终于可以通过了。

但是在运行的时候报错:“ This version of Android Studio is incompatible with the Gradle Plugin used. Try disabling Instant Run (or updating either the IDE or the Gradle plugin to the latest version) ”

这个到网上查了一下,是由于android studio2.0 以后有一种instant run的机制,简单理解就是如果你修改的地方是一个资源文件或者一段方法代码,as就可以不用重新安装apk而快速把你的app跑起来。

这里为了先运行程序,于是准备先把这个机制给取消掉。

点击File-》Setting—》Build,Exception,Deployment里面把Instant Run的选项取消掉

 

呼呼,折腾死,然后再重新跑一下,终于可以在真机上运行起来了, 在这个过程中我觉得自己肯定还有一些不明白的地方,现在把这个问题记录下来,以后可以回过头来总结一下。要学的东西还有很多,加油!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值