首页 文章

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

提问于
浏览
73

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

无法应用插件[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仍然是同样的问题 .

当我在终端Gradle 2.10中运行gradle -version时显示为版本 .

如何解决这个错误?

我的构建gradle文件是

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

 allprojects { 
   repositories { 
       jcenter() 
   } 
 }

7 回答

  • 1
    • 打开 gradle-wrapper.properties

    • 更改此行:

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

    distributionUrl=https\://services.gradle.org/distributions/gradle-2.8-all.zip
    
    • 转到 build.gradle (项目:your_app_name)

    • 更改此行

    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'
    
    • 不要点击 Sync Now

    • 从菜单中选择 File -> Invalidate Caches/Restart...

    • 选择第一个选项: Invalidate and Restart

    Android Studio会重启 . 在此之后,它应该正常工作

    希望它有所帮助

  • 12

    目前的解决方法是覆盖版本检查:在build.gradle中

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

    Check this link for more Details

  • 0

    Just Change in build.gradle文件

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

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

    • 选择第一个选项: Invalidate and Restart

    Android Studio会重启 .

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

  • 40

    基于https://developer.android.com/studio/releases/gradle-plugin.html ...

    下表列出了Gradle的每个Android插件版本所需的Gradle版本 . 为获得最佳性能,您应该使用Gradle和Android插件的最新版本 . [![在此输入图片说明] [1]] [1]

    因此,具有Required Gradle版本的插件版本应该匹配 .

    enter image description here

  • 1

    使用 ./gradlew 而不是 gradle 来解决此问题 .

  • 120

    这是我为解决这个问题所做的事情:

    1)创建一个新项目

    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)文件 - >无效缓存/重启(我认为重新同步可能已经足够,但没有尝试)

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

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

  • 24

    android studio和Gradle版本看起来非常糟糕 . 并且有大量版本的能力问题 . 而错误信息大多是无能为力的 . 对于这个特殊问题 . 最接近的答案来自“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中心找到最新的com.android.tools.build:gradle版本,现在是2.1.3 . 所以改成之后

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

    最终解决了我的问题 .

相关问题