Android(安卓)Studio 中遇到的Gradle build插件版本太低的问题:Plugin is too old
先说自己的解决办法:
(Gradle分两个,一个是本地构建用的构建工具,另一个是Android Studio中的插件,用来调用本地的工具,这里说的是插件)
一、先看看自己的gradle插件版本,项目的build.gradle中gradle:后面为版本号,例:
classpath 'com.android.tools.build:gradle:2.0.0-beta7'
二、在这个网址中找到更高级别的版本号,替换原来的版本号
https://jcenter.bintray.com/com/android/tools/build/gradle/
三、点击Sync Now就会自动下载更新版本
但对于国内来说自动更新貌似有些困难,于是镜像就不可避免了,参考下面网址:
http://www.androiddevtools.cn/ 中的腾讯镜像使用方法 http://android-mirror.bugly.qq.com:8080/include/usage.html
我自己的AS出现Plugin is too old的原因:
1、升级了Android Studio
2、升级了SDK
---------------------------------------------------------------------------
这几天还用的好好的Android Studio突然昨天(2016年3月3日)报错提示BUILD FAILED Plugin is too old
Error:(1, 0) Plugin is too old, please update to a more recent version, or set ANDROID_DAILY_OVERRIDE environment variable to "bd8994644a28e456358162533e01319cc08f4ef8"Fix plugin version and sync project
Open File
而当时查看我的插件版本是
classpath 'com.android.tools.build:gradle:2.0.0-alpha7'
网上找了好几种方法都不管用,包括将插件版本提高到2.10或2.+、降低版本为1.2.3、clean后rebuild然后重启、Gradle换成本地等等
后来找到一种方法:升级Android Studio到最新版。于是下载2.0 Beta 6,成功运行,但还是没有明白原因,因为提示错误是插件太旧,那跟AS版本又有什么关系呢?
今天,打开AS运行的时候又报错提示BUILD FAILED,一看还是同昨天一样的问题,我的天哪,瞬间感觉济南的冬天又回来了,今天可是有23度啊。没办法,只好把昨天的坑填上了,这次没办法靠升级AS解决问题了,但从网上搜到的都是和昨天差不多的方法,也有很多Stack Overflow上问同样问题的给的答案只能看懂一部分,那就只好自己分析解决了。
根据提示,是Gradle plugin版本太低的原因。Gradle有两个,一个是本地Gradle,一个是Android Studio中的Gradle plugin也就是AS中的插件。
Gradle plugin版本太低,也就是上图第二行的2.0.0-alpha7这个版本太低了,那就需要换个更高的版本。网上能查到的方法就是下载更高版本的插件放到C:\Users\Administrator\.gradle\wrapper\dists\gradle-2.10-all\a4w5fzrkeut1ox71xslb49gst文件夹中,我去找了,文件都在,如图
但不论我把插件版本换成这三个中的哪一个都会出现以下问题
Error:Could not find com.android.tools.build:gradle:2.10.Searched in the following locations: file:/D:/Android/android-studio/gradle/m2repository/com/android/tools/build/gradle/2.10/gradle-2.10.pom file:/D:/Android/android-studio/gradle/m2repository/com/android/tools/build/gradle/2.10/gradle-2.10.jar https://jcenter.bintray.com/com/android/tools/build/gradle/2.10/gradle-2.10.pom https://jcenter.bintray.com/com/android/tools/build/gradle/2.10/gradle-2.10.jarRequired by: :AppTest:unspecified
找不到,它竟然说找不到,但是明明都在的啊。于是我发现了一个问题:2.0.0-alpha7不在,可是我以前都是用2.0.0-alpha7的,也就是说路径不对。 这时万能的Everything出场了
然后我进入路径发现了这个
于是,一切都明白了,解决方法就是把Gradle插件版本换成2.0.0-beta6就可以了
classpath 'com.android.tools.build:gradle:2.0.0-beta6'
PS:换成1.2.3会报这个错 Error:Gradle version 2.2 is required. Current version is 2.10. If using the gradle wrapper, try editing the distributionUrl in D:\AndroidStudioProjects\AppTest\gradle\wrapper\gradle-wrapper.properties to gradle-2.2-all.zip.Please fix the project's Gradle settings.Fix Gradle wrapper and re-import project
Gradle settings
也就是说需要Gradle2.2版本,我现在的版本是2.10(读二点十,不知道Gradle团队怎么想的)版本比它高(现在看来如果你用的还是Gradle2.2之前的版本那么之前改成1.2.3的方法在某些情况下是管用的)。
总结:如果出现了版本太低的错误,用Everything或其他文件查找工具找到你现在在用的版本的位置,然后里面应该有更高版本等着你替换。当然现在我也不甚懂为什么是这个路径,或许又为以后留了个坑,希望知道的大神留言解惑。如果本文有写的不对的地方欢迎指正,多谢。
更多相关文章
- Android(安卓)targetSdkVersion了解一下
- Android整合Maven笔记(一)——在Android项目上启用maven
- Android(安卓)O 开发者预览版新特性
- Android(安卓)辅助功能(无障碍)自定义开发类似微信抢红包插件
- Android程序开发初级教程(一)
- Android——填坑android studio2.3.3升级到android studio3.2
- Android(安卓)Treble 结构:Part 1 - 介绍
- 使用谷歌提供的支持库(Android)
- Android(安卓)8.0 学习(4)---Android通用内核