今天我刚从Android SDK中导入了一个示例应用程序作为我项目中的模块(分析),当我尝试同步它时突然出现了这个gradle错误: Plugin is too old, please update to a more recent version, or set ANDROID_DAILY_OVERRIDE envrinment variable to...
这是我的app 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()
}
}
Jared Burrow..
132
就像CommonsWare建议的那样,确保你有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 SDK Manager以获取最新版本:
Android Build Tools插件: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 .
1> Jared Burrow..:
就像CommonsWare建议的那样,确保你有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 SDK Manager以获取最新版本:
Android Build Tools插件: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 .
我不得不去http://ps:// jcenter.bintray.com/com/android/tools/build/gradle /`找出最新版本的gradle是什么.使用该URL中的最新可用版本更新我的顶级gradle文件解决了该问题.你的解决方案没有给我足够的信息来找到它!
2> SergioLucas..:
解决方案(更新:2016年5月24日):
更改build.gradle(项目)
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:X.X.X-lastVersionGradle'
classpath 'com.google.gms:google-services:X.X.X-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 如果不使用java JDK 8u91和NetBeans 8.1,则抛出不支持的major.minor版本52.0
3> vaxquis..:
作为旁注,我在完全不相关的情况下得到了同样的错误 - 在我的系统时钟年设置改变之后(即2015年 - > 2016年); 将时钟更改回正确的时钟解决了问题.
注1:我发布这个主要是因为我有完全相同的错误信息,但工作解决方案被证明不同于仅仅更新插件的版本(发布者Jared Burrows
).
注2:使用
classpath 'com.android.tools.build:gradle:+'
可以使插件版本默认为最新版本.请记住,您的构建可能会因API更改而中断(并且由于这个原因,Android API文档不鼓励这样做),因此只有在您不断更新版本时才使用此风险.
Intellij/Android Studio会警告你不要这样做,因为你应该知道你正在使用什么版本.
4> Felipe Duart..:
万一有人正在努力解决这个问题,在我的情况下,我正在使用Gradle 1.4 beta 1,我需要保留它.因此,为了使Android Studio工作转到终端并运行:
launchctl setenv ANDROID_DAILY_OVERRIDE
重新启动Android Studio,项目将再次构建.
感谢更新2:https://emmanuelbernard.com/blog/2012/05/09/setting-global-variables-intellij/
5> IgorGanapols..:
您可以随时查看最新的gradle插件版本:https://bintray.com/android/android-tools/com.android.tools.build.gradle
所以截至今天你应该使用:
classpath 'com.android.tools.build:gradle:2.2.2'
因此.
6> 小智..:
用类似这样的模糊替换你的类路径.它是一个解决方案,它可以工作,但它可能不是一个好的解决方案.
classpath'com.android.tools.build:grad::'
最好的方法是用最新版本的gradle替换+
7> Dinesh Sunny..:
在这里查看最新版本的Gradle Plugin:
您应该在应用程序设置的依赖项中更改此设置
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:[PLACE VERSION CODE HERE]'
}
}