[英]Gradle version 2.2 is required. Current version is 2.10
我正在嘗試使用 gradle 構建。 它給我錯誤的說法
無法應用插件 [id 'com.android.library'] 需要 Gradle 版本 2.2。 當前版本是 2.10。 如果使用 gradle wrapper,請嘗試將 /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 -version 時,Gradle 2.10 顯示為版本。
如何解決該錯誤?
我的構建 gradle 文件是
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:1.3.0'
}
}
allprojects {
repositories {
jcenter()
}
}
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 將重新啟動。 在此之后,它應該可以正常工作
希望有幫助
當前的解決方法是覆蓋版本檢查:在您的 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'
現在GoTo
-> menu choose File
-> Invalidate Caches/Restart
...
選擇第一個選項: Invalidate and Restart
Android Studio 將重新啟動。
在此之后,它應該可以正常工作。
基於https://developer.android.com/studio/releases/gradle-plugin.html ...
下表列出了 Gradle 的每個版本的 Android 插件所需的 Gradle 版本。 為了獲得最佳性能,您應該使用最新版本的 Gradle 和 Android 插件。
因此,插件版本與必需的 Gradle 版本應該匹配。
這是我為解決此問題所做的工作:
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) File --> Invalidate Caches / Restart (我認為重新同步可能就足夠了,但沒試過)
5)刪除你做的那個項目(可選)
看,這是一種愚蠢的做事方式,但 Android Studio 是免費的,所以我有什么資格抱怨......
使用./gradlew
而不是gradle
來解決這個問題。
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 Central 找到最新的 com.android.tools.build:gradle 版本,目前是 2.1.3。 所以改成之后
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.1.3'
}
}
最終解決了我的問題。
我有類似的問題。 每個項目都有自己的 gradle 文件夾,檢查項目根目錄中是否有另一個 gradle 文件夾:
/my_projects_root_folder/project/gradle
/my_projects_root_folder/gradle
如果是這樣,您將在每個文件夾中找到 /gradle/wrapper/gradle-wrapper.properties。
檢查/my_projects_root_folder/gradle/gradle-wrapper.properties gradle 版本是否至少匹配/my_projects_root_folder/project/gradle/gradle-wrapper.properties gradle 版本
或者只是刪除/重命名您的/my_projects_root_folder/gradle並重新啟動 android studio 並讓 Gradle 同步工作並下載所需的 gradle。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.