2015-10-15 26 views
86

Nguyên nhân gây ra sự cố sau? Phiên bản SDK Android của tôi có được hỗ trợ không?Phản ứng gốc trên Android không thể tìm thấy Công cụ xây dựng

Starting JS server...                  
Building and installing the app on the device (cd android && gradlew.bat installDebug)... 

FAILURE: Build failed with an exception.             

* What went wrong:                   
A problem occurred configuring project ':app'.            
> failed to find Build Tools revision 23.0.1  
+0

Từ v25 của người quản lý SDK bây giờ bạn phải cài đặt đúng Công cụ xây dựng từ Android Studio vì lệnh 'android' bị xóa: https://stackoverflow.com/a/44295114/82609 –

Trả lời

132

Có thể bạn cần cập nhật Công cụ xây dựng của mình.

Tôi gặp sự cố khi tôi cố gắng cập nhật từ giao diện đồ họa, nó không hiển thị phiên bản nhỏ chính xác, vì vậy tôi không thể cập nhật lên.

Nó đã được giải quyết bằng cách nhìn vào các phiên bản có sẵn từ các thiết bị đầu cuối với:

android list sdk -a 

[...] 
Packages available for installation or update: 156 
1- Android SDK Tools, revision 24.4 
2- Android SDK Platform-tools, revision 23.0.1 
3- Android SDK Platform-tools, revision 23.1 rc1 
4- Android SDK Build-tools, revision 23.0.1 

[...]

Và cài đặt phiên bản đúng với:

android update sdk -a -u -t 4 
+0

tuyệt vời, cảm ơn. điều này đã làm việc – Teto

+2

Chương trình 'android' này là gì? Tôi lấy nó ở đâu? – jameshfisher

+2

@jameshfisher là một phần của SDK Android, nó nằm ở thư mục "công cụ" ví dụ: ~/android-sdk/tools/android – edur

71

Chỉ cần lưu ý - bạn có thể gặp lỗi này vì phiên bản duy nhất của công cụ xây dựng bạn đã cài đặt là quá mới.

Tôi nhận được chính xác lỗi mà OP nhận được (phàn nàn rằng phản ứng gốc không thể tìm thấy Bản sửa đổi Công cụ xây dựng 23.0.1). Khi tôi kiểm tra SDK Manager Android của tôi, tôi thấy điều này:

screenshot showing 23.0.2 "Installed" but 23.0.1 "Not installed"

tôi ngây thơ nghĩ rằng cài đặt phiên bản mới nhất của Build-công cụ (23.0.2 tại thời điểm viết bài) sẽ làm việc, nhưng rõ ràng là không. Ngoài ra, cài đặt 23.0.1 đã khắc phục sự cố.

+0

cùng một vấn đề ở đây. không có cách nào để sử dụng các công cụ xây dựng mới hơn? có thể một số cấu hình. – sodik

+0

Đề xuất này cũng phù hợp với tôi. 23.0.2 là quá mới, đi con số. Cảm ơn. – Fernando

+0

Xem câu trả lời của @ sodik cho giải pháp đúng – boatcoder

26

Tôi cũng gặp sự cố với phiên bản mới hơn của công cụ Xây dựng SDK (giống như Mark) nhưng tôi đã giải quyết được bằng cách sửa đổi android/app/build.gradle và thiết lập phiên bản phù hợp, ví dụ:

android { 
    compileSdkVersion 23 
    buildToolsVersion "23.0.2" 
... 

Cập nhật: Theo đánh dấu, bạn chỉ nên cập nhật phiên bản nhỏ (hoặc bản vá) theo cách này. Một lý do khác tại sao không phải là để cập nhật phiên bản này là khi bạn có nhiều lib bên thứ 3 có phần gốc - bạn có thể sẽ cập nhật tất cả chúng. Vì vậy, bạn phải cân nhắc các lợi ích có thể có của phiên bản mới hơn so với công việc nhiều hơn một chút.

+0

Cảm ơn, điều này đã giải quyết được vấn đề cho tôi! – niry

+1

cũng đừng quên thay đổi dòng 85 'targetSdkVersion 22' thành' targetSdkVersion 23'. – Xianlin

+0

Tôi thấy rằng tệp build.gradle được tạo có tệp buildToolsVersion "23.0.1" nhưng tôi chỉ có phiên bản 23 (23.0.0) được cài đặt - Không chắc chắn nơi "init gốc tự nhiên" tìm thấy số phiên bản SDK android/tools từ. Vì vậy, nguyên nhân thực sự là lệnh init gốc tự phản ứng không sử dụng số phiên bản công cụ có sẵn? – ferdil

4

Cần sửa đổi 4 file

grep buildToolsVersion * -r | grep 23.0.1

Examples/Movies/android/app/build.gradle: buildToolsVersion "23.0.2" 
Examples/UIExplorer/android/app/build.gradle: buildToolsVersion "23.0.2" 
ReactAndroid/build.gradle: buildToolsVersion "23.0.2" 
local-cli/generator-android/templates/src/app/build.gradle: buildToolsVersion "23.0.2" 
3

tôi đã phải thay đổi dự án Android của build.gradle để tôi:

compileSdkVersion 23 
buildToolsVersion "23.0.3" 

defaultConfig { 
    applicationId "com.demoproject" 
    minSdkVersion 16 
    targetSdkVersion 23 
    versionCode 1 
    versionName "1.0" 
    ndk { 
     abiFilters "armeabi-v7a", "x86" 
    } 
1

Nếu bạn có Xây dựng Công cụ phiên bản 24.0.1, sau đó cập nhật của bạn build.gradle để phù hợp với buildToolsVersion "24.0.0"

My Android/Sdk/build-tools/24.0.1/source.propertiesPkg.Revision được đặt thành 24.0.0.

1

Tìm số phiên bản trong thư mục /Users/username/Library/Android/sdk/build-tools, và sau đó sửa đổi số phiên bản của buildToolsVersion tương ứng với cấu hình Gradle

3

Nó có nghĩa là các công cụ xây dựng Android được cài đặt trên hệ thống của bạn là cái gì khác hơn trong cấu hình của ứng dụng của bạn tệp (tệp cấu hình của bạn trỏ đến 23.0.1) nhưng bạn có thể có 23, 24 hoặc 25.0. * trên hệ thống của bạn.

Các giải pháp để sửa chữa vấn đề này:

  1. Sửa build.gradle tập tin nằm dưới anroid/app trong thư mục dự án của bạn
  2. Hãy tìm mục buildToolsVersion "23.0.1", và thay thế bằng mới nhất phiên bản bạn có trên hệ thống của mình. Bạn có thể tìm thấy nó ở đây: C:\Program Files (x86)\Android\android-sdk\build-tools

HOẶC bạn có thể thử để cài đặt trong hệ thống của bạn phiên bản mà bạn có trong file build.gradle (với người quản lý SDK).

0

Tôi đã gặp sự cố này khi cố gắng xây dựng tại dòng lệnh sau tài liệu của phản ứng gốc. Tôi đã giải quyết vấn đề này bằng cách mở dự án trong studio android. Các phụ thuộc không khớp sẽ xuất hiện trong thanh công cụ thất bại khi xây dựng ở cuối ứng dụng. Đối với mỗi lỗi, hãy nhấp vào liên kết để giải quyết vấn đề.

0

Từ Android SDK manager v25 bạn phải cài đặt các công cụ xây dựng đúng trực tiếp từ thiết bị Android Studio vì lệnh android không hoạt động nữa:

install from android studio

Các vấn đề liên quan