1. 程式人生 > >Android Studio 中遇到的Gradle build外掛版本太低的問題:Plugin is too old

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"
<a href="fixGradleElements">Fix plugin version and sync project</a><br><a href="openFile:D:\AndroidStudioProjects\AppTest\app\build.gradle">Open File</a>

而當時檢視我的外掛版本是

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.jar
Required 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.
<a href="fixGradleVersionInWrapper">Fix Gradle wrapper and re-import project</a><br><a href="openGradleSettings">Gradle settings</a>

也就是說需要Gradle2.2版本,我現在的版本是2.10(讀二點十,不知道Gradle團隊怎麼想的)版本比它高(現在看來如果你用的還是Gradle2.2之前的版本那麼之前改成1.2.3的方法在某些情況下是管用的)。

總結:如果出現了版本太低的錯誤,用Everything或其他檔案查詢工具找到你現在在用的版本的位置,然後裡面應該有更高版本等著你替換。當然現在我也不甚懂為什麼是這個路徑,或許又為以後留了個坑,希望知道的大神留言解惑。如果本文有寫的不對的地方歡迎指正,多謝。

相關推薦

Android Studio 遇到的Gradle build外掛版本的問題Plugin is too old

先說自己的解決辦法: (Gradle分兩個,一個是本地構建用的構建工具,另一個是Android Studio中的外掛,用來呼叫本地的工具,這裡說的是外掛) 一、先看看自己的gradle外掛版本,專案的build.gradle中gradle:後面為版本號,例: classpa

Android Studio由於gradle插件版本gradle版本對應關系導致的編譯失敗的問題

解決 壓縮 tools log 報錯 spa tool sts 報錯信息 今天在Android Studio中導入新項目,import之後編譯報錯,報錯信息基本都是和版本相關,查詢gradle版本相關知識,了解到gradle插件版本和gradle版本有相應的匹配關系,對應如

Android StudioModule的build.gradle詳解

Gradle版本 我們在進行採用AS進行安卓專案的開發時,就必須接觸gradle,它是目前最新潮的一個構建專案的一個系統,而google也與時俱進,用著最新的東西,順便說下,eclipse之前是用Ant來構建專案的,還有一個用的比較多的就是maven。而AS的

NDK筆記(二)-在Android Studio使用ndk-build(轉)

路徑 width 能夠 jdk ide 代碼 目標 -1 adl 前面一篇我們接觸了CMake,這一篇寫寫關於ndk-build的使用過程。剛剛用到,想到哪兒寫哪兒。 環境背景 Android開發IDE版本:AndroidStudio 2.2以上版本(目前已經升級到2.

Android Studio 處理 Gradle 依賴的幾種方法的介紹

exclude exclude : 剔除依賴中的某個模組 例: // 根據組織名 + 構建名剔除 //recyclerview 不想要依賴 com.android.support:support-annotations:26.1.0,就可以這麼做 implementation

Android studio 配置Gradle 根據不同引數打包,並在程式碼使用

筆記 使用案例 app/gradle 配置 我們在 thinker中不難看出 他們也是使用了這個方式 android { defaultConfig {

詳細配置android studiogradle

這篇部落格著重點在詳細的介紹如何配置gradle,實現諸如多渠道打包,一次生成不同UI的多渠道apk,自定義資源目錄等。如果你對gradle還沒有比較清晰的認識,那麼推薦你在看這篇部落格之前,先看下我的另一篇部落格理解與配置android studio的gradle,這篇

理解與配置Android studiogradle

使用gradle構建android應用時,你總是需要這樣一個檔案:build.gradle。你應該已經看過這個檔案了,如果沒有看過的話,你現在就可以看一下,它沒有多少內容。它的簡潔性得益於它提供了很多對設定和屬性的預設值。gradle是基於groovy語言的,不過如果只是用

android studio 使用gradle.properties

一,為什麼使用gradle.properties? 1,對於專案而言,有時候需要配置某些敏感資訊。比如密碼,帳號等。而這些資訊需要被很多類共同使用,所以必須有一個全域性的配置 2,當需要把專案push到git上時,我們不希望別人看到我們專案的key,tok

Plugin is too old gradle外掛版本,怎麼更新?(ANDROID_DAILY_OVERRIDE)

Error:(1, 0) Plugin is too old, please update toa more recent version, orset ANDROID_DAILY_OVERRI

Android Studioplugin is too old please update

錯誤:Plugin is too old, please update to a more recent  Plugin is too old.... 說明Gradle的外掛版本不

Android:Plugin is too old, please update to a more recent version解決方法

當你的AndroidStudio報錯如下所示 Error:(1, 0) Plugin is too old, please update to a more recent version, or set ANDROID_DAILY_OVERRIDE environment

Android StudioGradle版本Gradle外掛版本問題

在as中主要是配置gradle和android gradle外掛,注意了gradle和(android gradle外掛)一定不能混為一談,2者是有區別的。 1.gradle的配置 當我們在setting下gradle下設定gradle選擇“use defalut gra

Android StudioGradle版本Gradle外掛版本問題整理

    使用Android Studio時,我們有時候需要檢視Gradle版本,具體如何檢視呢!經過如下幾步操作就可以了。     1.啟動Android Studio,選擇一個專案(Module),開啟該專案,如下所示:       2.專案開啟後,單擊‘File’選單,

android studio build.gradle

studio rain const list for config cep ets brush apply plugin: ‘com.android.application‘ android { compileSdkVersion 26 defaultCo

Android Studio gradle 的為什麼有兩個版本

情景再現 最近開啟Android Studio說要更新專案Gradle版本至4.6,結果build.gradle裡面是這樣的: dependencies { classpath 'com

Android Studio 在安裝gradle-4.6-all.zip下載問題

Android Studio 在安裝中遇gradle-4.6-all.zip下載問題 很久沒用Android Studio了,最近重新安裝Android Studio 時,遇到了這樣一個問題,一直在顯示gradle檔案在下載中,檢查其他檔案,全部沒問題後,並且更改使用者名稱為英文也無效;記錄下來以免以後遺忘

Android studio 修改 app的 build.gradle實現同一APP不同版本同時存在(同一APP安裝N次)

//執行lint檢查,有任何的錯誤或者警告提示,都會終止構建,我們可以將其關掉。 lintOptions { abortOnError false checkReleaseBuilds false // 防止在釋出的時候出現因MissingTranslat

如何在Android studio更新sdk版本build-tools版本

一、首先看下Android開發用到的sdk目錄: build-tools 儲存著一些Android平臺相關通用工具,比如adb、和aapt、aidl、dx等檔案。 aapt即Android Asset Packaging Tool , 在SDK的build-too

Android Studiobuild.gradle檔案解析

工程中根路徑下的build.gradle檔案 apply plugin: 'com.android.application' //表示是一個應用程式的模組,可獨立執行 //apply plugin: 'com.android.library' //表示是一個依