插件太旧,请更新到更新的版本,或设置ANDROID_DAILY_OVERRIDE环境variables
今天我刚刚从Android SDK中导入了一个示例应用程序作为我的项目(分析)中的一个模块,当我尝试同步它时突然发生了这个gradle错误: Plugin is too old, please update to a more recent version, or set ANDROID_DAILY_OVERRIDE envrinment variable to...
这是我的应用程序gradle
文件:
apply plugin: 'com.android.application' android { compileSdkVersion 22 buildToolsVersion "22.0.0" defaultConfig { applicationId "xxx.xxxxxx.xxxxx" versionCode 1 versionName '1' minSdkVersion 9 targetSdkVersion 22 versionCode 1 versionName '1' } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:22.0.0' compile 'com.google.android.gms:play-services:6.5.87' compile 'com.android.support:recyclerview-v7:21.0.0' compile 'com.android.support:cardview-v7:21.0.0' compile 'com.facebook.android:facebook-android-sdk:3.21.1' testCompile 'junit:junit:4.12' compile project(':volley') }
你有任何想法,可能是什么原因(我使用插件版本1.1.0-rc1和gradle
版本2.2和Android Studio
版本1.1.0)?
编辑:
这是我的顶级build.gradle
:
buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:1.1.0-rc1' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } allprojects { repositories { jcenter() } }
就像CommonsWarebuild议的一样,确保你有Gradle 2.2.1+(最新版本是2.3)。
确保你升级你的Android Studio,但这里是需要更新的“插件”:
顶级build.gradle
:
更改:
classpath 'com.android.tools.build:gradle:1.1.0-rc1'
至:
classpath 'com.android.tools.build:gradle:1.1.3' // latest 1.5.0
应用程序build.gradle
:
更改:
compile 'com.android.support:recyclerview-v7:21.0.0' compile 'com.android.support:cardview-v7:21.0.0'
至:
compile 'com.android.support:recyclerview-v7:22.0.0' // latest 23.1.1 compile 'com.android.support:cardview-v7:22.0.0' // latest 23.1.1
Gradle: https : //gradle.org/downloads
总是检查Android SDKpipe理器的最新修订版本:
Android构build工具插件: http : //tools.android.com/tech-docs/new-build-system
Android支持库: http : //developer.android.com/tools/support-library/features.html
要查看最新的插件版本,请直接查看Bintray Jcenter页面: https ://bintray.com/android/android-tools/com.android.tools.build.gradle/view。
解决scheme(更新:2016年5月24日):更改build.gradle(项目)
buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:XXX-lastVersionGradle' classpath 'com.google.gms:google-services:XXX-lastVersionGServices' // If use google-services // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files }
XXX-lastVersionGradle :例如: 2.1.0
XXX-lastVersionGServices :例如: 3.0.0 (支持Firebase Analytics)
注意:如果您使用的是google-services插件必须是相同的版本(如果有的话)
警告!! – > 2.2.0-alpha抛出不支持的major.minor版本52.0,如果你不使用java JDK 8u91和NetBeans 8.1
作为一个方面说明,我已经在完全不相关的情况下得到同样的错误 – 在我的系统时钟年设置已经改变(即2015 – > 2016)之后; 改变时钟回到正确的解决了这个问题。
注1:我发布这主要是因为我有完全相同的错误消息,但工作解决schemecertificate是不同的只是更新插件的版本(由Jared Burrows
张贴)。
注2:使用
classpath 'com.android.tools.build:gradle:+'
可以使插件版本默认为最新版本。 请记住,您的构build可能会因API更改而中断(因为这个原因,Android API文档不鼓励),所以只有在您不断更新版本的情况下,您才能自行承担风险。
以防万一有人在这方面挣扎,在我的情况下,我正在使用Gradle 1.4 beta 1,我需要保留它。 所以为了使Android Studio能够运行到terminal并运行这个:
launchctl setenv ANDROID_DAILY_OVERRIDE <your-value-on-error-message>
重新启动Android Studio,该项目将重新生成。
荣誉更新2在这里: https : //emmanuelbernard.com/blog/2012/05/09/setting-global-variables-intellij/
您可以随时在这里查看最新的gradle插件版本: https ://bintray.com/android/android-tools/com.android.tools.build.gradle
所以截至今天,你应该使用:
classpath 'com.android.tools.build:gradle:2.2.2'
因此。
用类似这样的东西replace你的类path。 它的解决scheme,它的工作,但它可能不是一个好的解决scheme。
classpath'com.android.tools.build:gradle:+'
最好的方法是用最新版本的gradlereplace+
检查最新版本的Gradle Plugin Here:
你应该改变这个应用程序设置的依赖
buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:[PLACE VERSION CODE HERE]' }
}
出现此问题是因为Gradle版本发生了变化,因为您的应用程序使用旧版本的Gradle,所以需要更新到新版本。
这个改变需要在build.gradle文件中完成,看看这个链接http://www.feelzdroid.com/2015/11/android-plugin-too-old-update-recent-version.html 。 知道如何更新gradle,并提供详细的步骤。 那里。
Thans
我正在使用Android数据绑定 ,今天我也遇到同样的问题。
要解决它,请更改:
classpath "com.android.databinding:dataBinder:1.0-rc0"
至:
classpath "com.android.databinding:dataBinder:1.0-rc1"
1.0-rc0现在仍然可以在jcenter上find,我不知道为什么它不能使用。
我得到了一个最终解决这个问题的方法1.检查顶部build.gradle中的calsspath,例如我的类path是“com.android.tools.build:gradle:2.1.0-alpha3”,然后转到https:// jcenter。 bintray.com/com/android/tools/build/gradle/find一个比你的更新的版本,在这里我select2.1.0-beta3改变classpath到下面,然后启动build。 classpath'com.android.tools.build:gradle:2.1.0-beta3'
如果你想继续使用最新的开发版本,那么每当你的版本已经足够过时时,这个问题就会重新出现。
我一直在保持最新的开发版本的最新列表,以及我对这个类似问题的答案的稳定版本,以便每当我得到一个新的警告时我可以修复它:
Android Studio 2.0 – 插件太旧,请更新到更新的版本,或设置ANDROID_DAILY_OVERRIDE
将环境variablesANDROID_DAILY_OVERRIDE设置为相同的值示例 – b9471da4f76e0d1a88d41a072922b1e0c257745c
这对我有用。
您应该升级gradle的版本。 例如:com.android.build.gradle 1.3.0
当更改Gradle的版本时会发生此问题。
删除“-rcX”部分的解决scheme工作。 我想提供一些关于错误发生的细节。 问题是https://android.googlesource.com/platform/tools/base/+/master/build-system/gradle/src/main/groovy/com/android/build/gradle/BasePlugin.java#230
对于没有版本或包含“rc”,“alpha”或“beta”的插件,默认有40天的“退休年龄”。
在过去的几个月中,我使用了Android Studio的“预览”版本。 我试图回到软件更新的“稳定”版本,但这还不够,我得到了这个着名的错误。
卸载我的Android Studio 2.2.preview并安装最新的稳定的 Android Studio(2.1)修复了我:)
在我的情况下,去稳定版本或应用程序级gradle文件gradle
classpath'com.android.tools.build:gradle:2.2.0-alpha3'
我改变了它
classpath'com.android.tools.build:gradle:2.1.2'