Không thể tìm thấy com.android.tools.build:aapt2:3.2.0


104

AndroidStudio3.2 Canary14 không thể dọn dẹp và xây dựng lại với lỗi sau

Could not find com.android.tools.build:aapt2:3.2.0-alpha14-4748712.
Searched in the following locations:
    file:~/Library/Android/sdk/extras/m2repository/com/android/tools/build/aapt2/3.2.0-alpha14-4748712/aapt2-3.2.0-alpha14-4748712.pom
    file:~/Library/Android/sdk/extras/m2repository/com/android/tools/build/aapt2/3.2.0-alpha14-4748712/aapt2-3.2.0-alpha14-4748712-osx.jar
    file:~/Library/Android/sdk/extras/google/m2repository/com/android/tools/build/aapt2/3.2.0-alpha14-4748712/aapt2-3.2.0-alpha14-4748712.pom
    file:~/Library/Android/sdk/extras/google/m2repository/com/android/tools/build/aapt2/3.2.0-alpha14-4748712/aapt2-3.2.0-alpha14-4748712-osx.jar
    file:~/Library/Android/sdk/extras/android/m2repository/com/android/tools/build/aapt2/3.2.0-alpha14-4748712/aapt2-3.2.0-alpha14-4748712.pom
    file:~/Library/Android/sdk/extras/android/m2repository/com/android/tools/build/aapt2/3.2.0-alpha14-4748712/aapt2-3.2.0-alpha14-4748712-osx.jar
    https://jcenter.bintray.com/com/android/tools/build/aapt2/3.2.0-alpha14-4748712/aapt2-3.2.0-alpha14-4748712.pom
    https://jcenter.bintray.com/com/android/tools/build/aapt2/3.2.0-alpha14-4748712/aapt2-3.2.0-alpha14-4748712-osx.jar
Required by:
    project :app

Câu trả lời:


238

Bắt đầu với Android Studio 3.2 Canary 11, nguồn cho AAPT2 (Công cụ đóng gói tài sản Android 2) là kho lưu trữ Maven của Google.

Để sử dụng AAPT2, hãy đảm bảo rằng bạn có phụ thuộc google () trong tệp build.gradle của mình, như được hiển thị ở đây:

buildscript {
  repositories {
      google() // here
      jcenter()
  }
  dependencies {
      classpath 'com.android.tools.build:gradle:3.2.0-alpha12'
  }
} 
allprojects {
  repositories {
      google() // and here
      jcenter()
  }
}

Phiên bản mới của AAPT2 khắc phục nhiều sự cố, bao gồm cải thiện khả năng xử lý các ký tự không phải ASCII trên Windows.

Thêm kho lưu trữ trong buildscriptlà không đủ, bạn cần phải thêm nó vào allprojects.

Nguồn: https://developer.android.com/studio/releases/#aapt2_gmaven


30
Điều này đã sửa nó cho tôi - tôi đã có google()trong buildscriptrepo nhưng không có trong allprojectsrepo. Nhiều nghĩa vụ.
LarsH

1
Cảm ơn bạn! nó là một sửa chữa đơn giản như vậy. Nó đặt ra câu hỏi là tại sao các thông báo lỗi có để được như vậy khó hiểu rằng đề nghị hành động không được bao gồm theo mặc định
Antony

3
Câu trả lời của LarsH đã giúp ích, một điểm nữa là google () cũng nên xuất hiện trên các trang khác. Đặt hàng cũng có vấn đề ở đây.
Reejesh PK

Cũng có thể xây dựng dự án mà không cần google()phụ thuộc?
white_gecko,

Bạn có thể tải về các tạo tác từ maven và đặt nó vào kho lưu trữ ẩn của bạn nếu bạn thực sự muốn
Izabela Orlowska

41

Bạn đang mở một dự án rất cũ? Nếu vậy, hãy đảm bảo rằng build.gradle của ứng dụng của bạn có:

apply plugin: 'com.android.application'

repositories {
    google()
    jcenter()
} 

(Dù sao thì điều đó cũng giải quyết được cho tôi)


Phần quan trọng là sự phụ thuộc vào kho lưu trữ "google ()".
Izabela Orlowska

11
Đối với tôi đó là mệnh lệnh. Tôi đã có google()nhưng nó nằm trong danh sách các repo. Di chuyển nó lên đầu danh sách các repo đã khắc phục sự cố.
Ezekiel Sebastine

điều này nên được chấp nhận ... (ít nhất là để mở các dự án cũ) ... kho lưu trữ khóa là google () và nó có thể được đặt vào build.gradle của ứng dụng hoặc đúng hơn là trong build.gradle của dự án trong allprojects> repositories, nơi jcenter () thường đã là
Lukáš Řádek

19

Chỉ cần thêm google()vào buidscript của bạn và tất cả các dự án, sau đó xây dựng lại dự án.

buildscript {
    repositories {
        google() // `enter code here`
    }
 }

allprojects {
    repositories {
        google() // `<-- here`
    }
}

Cảm ơn bạn vì sự giúp đỡ. Thêm tất cả các dự án đã giải quyết được vấn đề
Haris Durrani

5

Cập nhật phần phụ thuộc tệp build.grade của ứng dụng của bạn với phiên bản cập nhật của lớp

dependencies {    
  classpath 'com.android.tools.build:gradle:3.5.3'   
}

Làm theo gợi ý của studio android về phiên bản để cập nhật lên. sau khi cập nhật classpath lớp của bạn và đồng bộ hóa lại ứng dụng của bạn.

Sau khi tất cả điều này khởi động lại studio Android của bạn .


3

Tôi giải quyết vấn đề này bằng cách thay đổi "phân phối" trong android/gradle/gradle-wrapper.properties.

Giá trị mặc định là https\://services.gradle.org/distributions/gradle-4.10.2-all.zipvà tôi đã thay đổi nó thành https\://services.gradle.org/distributions/gradle-5.4.1-all.zipvà lỗi đã biến mất.


3

Tôi có thông báo lỗi này:

Không thể tải xuống aapt2-osx.jar (com.android.tools.build:aapt2:3.5.0-5435860): Không có phiên bản đã lưu trong bộ nhớ cache cho chế độ ngoại tuyến

Ngay cả khi tôi đã xác định tất cả các phụ thuộc cần thiết cho proyect của mình và cấu hình phù hợp vào build.gradle của tôi:

apply plugin: 'com.android.application'

repositories {
    google()
    jcenter()
} 

Lỗi vẫn xảy ra, nhưng thông báo này cho tôi manh mối về những gì đang xảy ra:

Không có phiên bản đã lưu trong bộ nhớ cache cho chế độ ngoại tuyến

Vì vậy, tôi phát hiện ra rằng tôi đang làm việc ngoại tuyến, bạn cần bỏ chọn "chế độ ngoại tuyến" thì Android Studio mới có thể tải xuống các tài nguyên cần thiết để tạo dự án .

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

Khi dự án của bạn hoạt động trở lại, bạn có thể kiểm tra lại để hoạt động ngoài liên kết.


3

Tôi ở Iran và kho lưu trữ google bị hạn chế ở vị trí của tôi. Khi tôi thay đổi IP của mình sang một quốc gia khác, vấn đề này đã được giải quyết. Có vẻ như bạn có thể gặp sự cố kết nối internet khi lỗi này xảy ra.


thực sự tôi đang sử dụng vpn nhưng vấn đề vẫn nhắc nhở và tôi không thể chạy dự án!
Nadia

1
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    repositories {
        jcenter()
        google()  //导入旧版本项目时,一般来说该处依赖会在更改classpath中gradle版本是自动添加
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.3.0'
        classpath 'com.google.gms:google-services:3.0.0'
    }
}

allprojects {
    repositories {
       /*
        解决报错:Could not find com.android.tools.build:aapt2:3.3.0-5013011.
        Beginning with Android Studio 3.2 Canary 11, the source for AAPT2 (Android Asset Packaging Tool 2) is Google's Maven repository.
        To use AAPT2, make sure that you have a google() dependency in your build.gradle file, as shown here:
        */
        google() //但是此处不会,需要自主添加
        jcenter()
    }
}


0

Giải pháp là một quy trình gồm bốn bước,

  1. thay đổi đường dẫn classpath trong build.gradle thành phiên bản mong muốn.
  2. Đồng bộ hóa ngay
  3. Sau khi tải xuống tất cả các tệp, bạn có thể xóa tệp mới và thêm phiên bản trước đó trong Gradle.
  4. Đồng bộ hóa ngay

0

Trong trường hợp của tôi, tôi có thể giải quyết bằng cách cập nhật "Công cụ xây dựng SDK Android" lên phiên bản mới nhất.

Trong Android studio, Goto Tools -> SDK Manager -> Chọn tab SDK tools -> kiểm tra xem có bản cập nhật nào cho Android SDK Build - Tools hay không (được cập nhật lên v30.0.0 mới nhất).

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


-1

bạn cần ghi lại trong: build.gradle () và nhập google () và tùy chọn này thực hiện trong phần buildcript & allproject


1
đây chỉ là một bình luận hơn là một câu trả lời
sudo97

-2

if google () not fixied then File -> Setting -> Build, Execution, Deployment -> Gradle

Sau đó, bỏ chọn Ofline Work, Done.

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.