Co powoduje następujący problem? Czy moja wersja Android SDK nie jest obsługiwana?
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
javascript
android
reactjs
react-native
Łukasz Rzeszotarski
źródło
źródło
android
polecenie zostało usunięte: stackoverflow.com/a/44295114/82609Odpowiedzi:
Prawdopodobnie musisz zaktualizować narzędzia do budowania.
Napotkałem problem, gdy próbowałem zaktualizować z interfejsu graficznego, nie pokazał dokładnej wersji pomocniczej, więc nie mogłem go zaktualizować.
Rozwiązano to patrząc na dostępne wersje z terminala z:
[...] 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
[…]
I zainstalowanie odpowiedniej wersji z:
android update sdk -a -u -t 4
źródło
android
program? Skąd to mam?android
polecenie już nie działa i aby uzyskać dostęp do tego ustawienia, należy uruchomić Android Studio, patrz stackoverflow.com/a/44295114/82609Tylko uwaga - ten błąd jest możliwy, ponieważ jedyna wersja zainstalowanych narzędzi do kompilacji jest zbyt nowa .
Otrzymałem dokładnie błąd, który dostał OP (narzekając, że natywny reagujący nie może znaleźć wersji narzędzi kompilacji 23.0.1). Kiedy sprawdziłem mojego Menedżera Android SDK, zobaczyłem to:
Naiwnie myślałem, że zainstalowanie najnowszej wersji narzędzi kompilacji (23.0.2 w momencie pisania) zadziała, ale najwyraźniej nie. Dodatkowo zainstalowanie 23.0.1 rozwiązało problem.
źródło
build.gradle
aby React Native używał nowszych narzędzi do budowania). Wydaje się, że Android Build Tools podąża za SemVer, więc modyfikacja wbuild.gradle
celu użycia późniejszej poprawki lub podrzędnej wersji powinna być zwykle bezpieczna, może zapewnić pewne poprawki błędów na poziomie platformy lub ulepszenia wydajności i oszczędzić konieczności pobierania czegokolwiek. Ale zepsuje twoją aplikację, jeśli zostanie wykonana w wersji głównej , i wprowadza pewne ryzyko nawet w przypadku poprawek / mniejszych wydań, ponieważ używasz RN z narzędziami do kompilacji, których Facebook nie zamierzał.Miałem też problem z nowszą wersją narzędzi SDK Build (tak samo jak Mark) ale udało mi się go rozwiązać poprzez modyfikację
android/app/build.gradle
i ustawienie odpowiedniej wersji np.android { compileSdkVersion 23 buildToolsVersion "23.0.2" ...
AKTUALIZACJA: Jak zasugerował Mark, rozsądnie jest tylko aktualizować wersję pomocniczą (lub łatkę) w ten sposób. Innym powodem, dla którego nie warto aktualizować tej wersji, jest to, że masz wiele bibliotek innych firm z częścią natywną - możesz w końcu zaktualizować je wszystkie. Musisz więc zważyć możliwe korzyści wynikające z nowszej wersji w porównaniu z nieco większą pracą.
źródło
targetSdkVersion 22
natargetSdkVersion 23
.Potrzebujesz zmodyfikować 4 pliki
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"
źródło
Musiałem zmienić mój projekt Androida
build.gradle
na:compileSdkVersion 23 buildToolsVersion "23.0.3" defaultConfig { applicationId "com.demoproject" minSdkVersion 16 targetSdkVersion 23 versionCode 1 versionName "1.0" ndk { abiFilters "armeabi-v7a", "x86" }
źródło
Oznacza to, że Android Build Tools zainstalowane w twoim systemie to coś innego niż plik konfiguracyjny twojej aplikacji (twój plik konfiguracyjny wskazuje na 23.0.1), ale prawdopodobnie masz 23, 24 lub 25.0. * W swoim systemie.
Rozwiązanie tego problemu:
build.gradle
plik znajdujący się wanroid/app
w folderze projektubuildToolsVersion
„23.0.1” i zastąp go najnowszą wersją, którą masz w systemie. Znajdziesz go tutaj:C:\Program Files (x86)\Android\android-sdk\build-tools
LUB możesz spróbować zainstalować w swoim systemie wersję, którą masz w
build.gradle
pliku (za pomocą menedżera SDK).źródło
Z menedżera Android SDK v25 musisz zainstalować odpowiednie narzędzia do kompilacji bezpośrednio z Android Studio, ponieważ
android
polecenie już nie działa:źródło
Znajdź numer wersji w
/Users/username/Library/Android/sdk/build-tools
katalogu, a następnie zmodyfikuj numer wersjibuildToolsVersion
odpowiadający konfiguracji Gradleźródło
Jeśli masz narzędzia do kompilacji w wersji 24.0.1, zaktualizuj je,
build.gradle
aby pasowałybuildToolsVersion "24.0.0"
Mój
Android/Sdk/build-tools/24.0.1/source.properties
byłPkg.Revision
ustawiony24.0.0
.źródło
Miałem ten problem, próbując zbudować w wierszu poleceń zgodnie z dokumentacją React Native. Rozwiązałem ten problem, otwierając projekt w Android Studio. Niedopasowane zależności pojawią się na pasku przekąskowym niepowodzenia kompilacji u dołu aplikacji. W przypadku każdej awarii kliknij łącze, aby rozwiązać problem.
źródło
Dowiedziałem się, że dzieje się tak również wtedy, gdy odinstalowałeś niektóre pakiety z projektu React-native, a na dole strony nadal znajdują się pakiety w zależnościach build Gradle, takie jak:
{ project(':react-native-sound-player') }
Po usunięciu projektu pamiętaj o usunięciu powiązanego kodu z pliku MainApplication.java („: React-native-sound-player”)źródło