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的選項取消掉

 

呼呼,折騰死,然後再重新跑一下,終於可以在真機上運行起來了, 在這個過程中我覺得自己肯定還有一些不明白的地方,現在把這個問題記錄下來,以後可以回過頭來總結一下。要學的東西還有很多,加油!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章