Gradle phiên bản 2.2 là bắt buộc. Phiên bản hiện tại là 2.10


80

Tôi đang cố gắng sử dụng bản dựng gradle. Nó cho tôi lỗi khi nói rằng

Không áp dụng được plugin [id 'com.android.library'] Gradle phiên bản 2.2 là bắt buộc. Phiên bản hiện tại là 2.10. Nếu sử dụng trình bao bọc gradle, hãy thử chỉnh sửa phân phốiUrl trong /home/sanjeewa/workspace/Android/UVCCamera/gradle/wrapper/gradle-wrapper.properties thành gradle-2.2-all.zip

Nhưng gradle-wrapper.properties của tôi bao gồm gradle-2.4-all.zip. Tôi đã thay đổi nó thành gradle-2.2-all.zip Vẫn còn vấn đề.

Khi tôi chạy gradle -version trong thiết bị đầu cuối Gradle 2.10 hiển thị dưới dạng phiên bản.

Làm thế nào để giải quyết lỗi đó ??

tệp gradle xây dựng của tôi là

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

 allprojects { 
   repositories { 
       jcenter() 
   } 
 } 

Câu trả lời:


127
  1. Mở gradle-wrapper.properties
  2. Thay đổi dòng này:

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

với

        distributionUrl=https\://services.gradle.org/distributions/gradle-2.8-all.zip
  1. Đi tới build.gradle(Dự án: your_app_name)
  2. Thay đổi dòng này

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

đến cái này

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

hoặc là

     classpath 'com.android.tools.build:gradle:1.5.0'
  1. Đừng bấm vào Sync Now
  2. Từ menu chọn File -> Invalidate Caches/Restart...
  3. Chọn tùy chọn đầu tiên: Invalidate and Restart

Android Studio sẽ khởi động lại. Sau đó, nó sẽ hoạt động bình thường

Hy vọng nó sẽ giúp


Curios: Tại sao 2.0-beta3 thay vì 1.5.0?
dsh

tôi chỉ đang sử dụng thiết bị đầu cuối để xây dựng gradle. Tôi nghĩ không cần phải vô hiệu hóa bộ nhớ đệm.
manitaz

@dsh 1.5.1là phiên bản ổn định mới nhất, nhưng 2.0-beta3 hoạt động tốt, nhanh hơn một chút. Tôi đã sử dụng AS 1.5 ổn định với Gradle Plugin 2.0 beta3
piotrek1543

@manitaz, vui lòng thử xây dựng dự án của bạn trong Android Studio - nếu nó hoạt động, hãy thử bằng thiết bị đầu cuối và so sánh - ý tôi là hãy kiểm tra xem cả hai có hoạt động tốt không. Không làm mất hiệu lực? ok, rất sạch và buld lại
piotrek1543


24

Chỉ cần thay đổi trong tệp build.gradle

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

Đến

 classpath 'com.android.tools.build:gradle:2.0.0'
  1. Bây giờ GoTo-> menu choose File-> Invalidate Caches/Restart...

  2. Chọn tùy chọn đầu tiên: Invalidate and Restart

    Android Studio sẽ khởi động lại.

    Sau đó, nó sẽ hoạt động bình thường.


Studio android và phiên bản gradle rất lộn xộn. Trong trường hợp của tôi, tôi phải đặt phiên bản thành mới nhất hiện tại: classpath 'com.android.tools.build:gradle:2.1.3'. Phiên bản studio Android của tôi là: Android studio 2.2RC
Jianwu Chen

14

Dựa trên https: //developer.android.com/studio/releases/gradle-plugin.html ...

Bảng sau liệt kê phiên bản Gradle nào là bắt buộc đối với từng phiên bản của plugin Android cho Gradle. Để có hiệu suất tốt nhất, bạn nên sử dụng phiên bản mới nhất có thể của cả Gradle và plugin Android.

Vì vậy, phiên bản Plugin với phiên bản Bắt buộc Gradle phải phù hợp.

nhập mô tả hình ảnh ở đây


2

Đây là những gì tôi đã làm để sửa lỗi này:

1) Tạo một dự án mới

2) mở tệp gradle-wrapper.properties và sao chép phân phối vào dự án của bạn, ví dụ:

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

3) mở build.gradle (Dự án) và sao chép phụ thuộc gradle vào dự án của bạn, ví dụ:

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

4) Tệp -> Không hợp lệ bộ nhớ cache / Khởi động lại (Tôi nghĩ rằng việc đồng bộ hóa lại có thể đã đủ, nhưng không thử)

5) Xóa dự án bạn đã thực hiện (tùy chọn)

Nghe này, đây là một cách ngớ ngẩn để làm mọi thứ, nhưng Android Studio miễn phí, vậy tôi là ai để phàn nàn ...


Điều này đã hoạt động với IntelliJ IDEA 2019.2, ngoại trừ một dòng bổ sung google()phải được sao chép từ build.gradletệp của dự án giả mạo .
RenniePet


0

Phiên bản studio android và Gradle có vẻ được quản lý rất tệ. Và có rất nhiều vấn đề về khả năng của phiên bản. Và thông báo lỗi chủ yếu là không có câu trả lời. Đối với vấn đề cụ thể này. Câu trả lời gần nhất là từ "Jitendra Singh". Thay đổi phiên bản thành:

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

Nhưng trong trường hợp của tôi: Android studio 2.2 RC, tôi vẫn gặp một lỗi khác:

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)

Vì vậy, tôi đã đến trung tâm maven để tìm phiên bản com.android.tools.build:gradle mới nhất hiện tại là 2.1.3. Vì vậy, sau khi thay đổi thành

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

Cuối cùng đã giải quyết được vấn đề của tôi.


0

Tôi đã gặp vấn đề tương tự. Mỗi dự án đều có thư mục gradle của riêng mình, hãy kiểm tra xem trong thư mục gốc dự án của bạn có một thư mục gradle khác không:

/my_projects_root_folder/project/gradle
/my_projects_root_folder/gradle

Nếu vậy, trong mọi thư mục, bạn sẽ tìm thấy /gradle/wrapper/gradle-wrapper.properties.

Kiểm tra xem trong /my_projects_root_folder/gradle/gradle-wrapper.properties phiên bản gradle ít nhất trận đấu / my_projects_root_folder / dự án / gradle / gradle-wrapper.properties gradle-wrapper.properties phiên bản gradle

Hoặc chỉ cần xóa / đổi tên / my_projects_root_folder / gradle của bạn và khởi động lại android studio và để đồng bộ hóa Gradle hoạt động và tải xuống gradle cần thiết.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.