Gradle版本2.2是必需的。 当前版本是2.10

我正在尝试使用gradle构build。 这给了我错误的说法

无法应用插件[id'com.android.library'] Gradle版本2.2是必需的。 当前版本是2.10。 如果使用gradle包装,尝试编辑/ home / sanjeewa / workspace / Android / UVCCamera / gradle / wrapper / gradle-wrapper.properties中的distributionUrl到gradle-2.2-all.zip

但我的gradle-wrapper.properties包括gradle-2.4-all.zip。 我已经把它改成了gradle-2.2-all.zip仍然是同样的问题。

当我在terminalGradle 2.10中显示版本时运行gradle -version。

如何解决这个错误?

我的构buildgradle文件是

buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:1.3.0' } } allprojects { repositories { jcenter() } } 
  1. 打开gradle-wrapper.properties
  2. 改变这一行:

      distributionUrl=https\://services.gradle.org/distributions/gradle-2.4-all.zip 

  distributionUrl=https\://services.gradle.org/distributions/gradle-2.8-all.zip 
  1. 转到build.gradle (Project:your_app_name)
  2. 改变这一行

      classpath 'com.android.tools.build:gradle:XXX' 

对此

  classpath 'com.android.tools.build:gradle:2.0.0-alpha3' 

要么

  classpath 'com.android.tools.build:gradle:1.5.0' 
  1. 不要点击Sync Now
  2. 从菜单中selectFile -> Invalidate Caches/Restart...
  3. select第一个选项: Invalidate and Restart

Android Studio将重新启动。 在此之后,它应该正常工作

希望它有帮助

目前的解决办法是overrideVersionCheck:在你的build.gradle

 buildscript { System.properties['com.android.build.gradle.overrideVersionCheck'] = 'true' ... } 

检查此链接了解更多详情

只需更改 build.gradle文件

  classpath 'com.android.tools.build:gradle:1.3.0' 

  classpath 'com.android.tools.build:gradle:2.0.0' 
  1. 现在GoTo – > menu choose File – > Invalidate Caches/Restart

  2. select第一个选项: Invalidate and Restart

    Android Studio将重新启动。

    在此之后,它应该正常工作。

https://developer.android.com/studio/releases/gradle-plugin.html显示;

下表列出了Gradle Android插件的每个版本所需的Gradle版本。 为了获得最佳性能,您应该使用Gradle和Android插件的最新版本。 在这里输入图像描述

所以,要求Gradle版本的插件版本是相匹配的。

使用./gradlew代替gradle来解决这个问题。

这是我做了什么来解决这个问题:

1)创build一个新的项目

2)打开gradle-wrapper.properties文件并将distributionUrl复制到您的项目中,例如:

 distributionUrl=https\://services.gradle.org/distributions/gradle-3.2-all.zip 

3)打开build.gradle(Project)并将Gradle依赖项复制到您的项目中,例如:

 classpath 'com.android.tools.build:gradle:2.3.0-beta1' 

4)文件 – >无效的caching/重新启动(我认为重新同步可能已经足够,但没有尝试)

5)删除你所做的项目(可选)

看,这是一个愚蠢的做事的方式,但Android Studio是免费的,所以我是谁抱怨…

Android工作室和Gradle版本看起来非常糟糕的pipe理。 而且还有大量的版本性能问题。 而错误信息大多是无能的。 对于这个特定的问题。 最接近的答案是来自“Jitendra Singh”。 将版本更改为:

  classpath 'com.android.tools.build:gradle:2.0.0' 

但在我的情况:Android Studio 2.2 RC,我仍然得到另一个错误:

 Could not find matching constructor for: com.android.build.gradle.internal.LibraryTaskManager(org.gradle.api.internal.project.DefaultProject_Decorated, com.android.builder.core.AndroidBuilder, android.databinding.tool.DataBindingBuilder, com.android.build.gradle.LibraryExtension_Decorated, com.android.build.gradle.internal.SdkHandler, com.android.build.gradle.internal.DependencyManager, org.gradle.tooling.provider.model.internal.DefaultToolingModelBuilderRegistry) 

于是我去了maven中心find最新的com.android.tools.build:gradle版本,现在是2.1.3。 所以改成之后

 buildscript { repositories { mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:2.1.3' } } 

最终解决了我的问题。