React Native error: "Nie można określić wersji Javy od wersji '9.0.1'."
Pracuję na MacOS i dopiero zaczynam od react-native
.
Jednym z pierwszych kroków, aby rozpocząć, jest uruchomienie: react-native run-android
lub react-native run-ios
. Ale dostaję ten błąd:
react-native run-android
Wynik:
Scanning folders for symlinks in /Users/ric/myprojs/albums/node_modules (6ms)
Starting JS server...
Building and installing the app on the device (cd android && ./gradlew installDebug)...
FAILURE: Build failed with an exception.
* What went wrong:
Could not determine java version from '9.0.1'.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
Could not install the app on the device, read the error above for details.
Make sure you have an Android emulator running or a device connected and have
set up your Android development environment:
https://facebook.github.io/react-native/docs/android-setup.html
To dostaję, gdy biegnę java --version
:
java --version
Wynik:
java 9.0.1
Java(TM) SE Runtime Environment (build 9.0.1+11)
Java HotSpot(TM) 64-Bit Server VM (build 9.0.1+11, mixed mode)
mbp:albums ric$ java --version
java 9.0.1
Java(TM) SE Runtime Environment (build 9.0.1+11)
Java HotSpot(TM) 64-Bit Server VM (build 9.0.1+11, mixed mode)
Edytuj
Moja wersja javaca:
javac --version
Wynik:
javac 9.0.1
Jakiś pomysł, jak to naprawić?
11 answers
W Twoim PROJECT_PATH/android/gradle/wrapper/gradle-wrapper.properties
file, update your distributionUrl
do:
distributionUrl=https\://services.gradle.org/distributions/gradle-5.0-all.zip
Zobacz related gradle distributions documentation
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-03-11 18:54:38
Naprawdę najszybszym sposobem obejścia tego błędu jest użycie JDK 8. Z wyjątkiem sytuacji, gdy naprawdę trzeba użyć JDK9.
Http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
Nie zapomnij zmienić zmiennej środowiska JAVA_HOME na nową wersję JDK!
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-10-24 07:56:57
Upewnij się, że masz zainstalowane JDK8
, a następnie Ustaw JAVA_HOME
na JDK8
Na przykład:
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/Home
Lub użyj plików .bash_*
, Aby ustawić tę zmienną
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-03-11 18:46:03
vi ~/.bash_profile
Następnie dodaj następujące wiersze:
export ANDROID_HOME=$HOME/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/tools/bin
export PATH=$PATH:$ANDROID_HOME/platform-tools
export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)
Teraz źródło pliku, aby powyższe zmiany były skuteczne w bieżącej powłoce:
source ~/.bash_profile
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-03-11 19:11:16
Na MacOS uruchomiłem następujące polecenia:
brew cask uninstall java
brew tap caskroom/versions
brew cask install java8 "or just brew cask install java to install latest version"
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-07-05 14:14:19
Otrzymywałem ten błąd, ale dla nowszej wersji Javy - 10.0.2.
Aby naprawić mój błąd, wykonałem kroki wymienione przez @Blacktoviche
w tym wydaniu Github: https://github.com/facebook/react-native/issues/17688
Kiedy otworzyłem folder android
wewnątrz mojego projektu za pośrednictwem Android Studio, zostałem poproszony o Android Gradle plugin update recommended
. W tym czasie śledziłem nieco przestarzały samouczek, który kazał mi kliknąć Don't remind me again for this project
.
Jednak, jak @Blacktoviche
zalecane w wydaniu github linked powyżej czasami konieczna jest aktualizacja wtyczki Gradle. Po aktualizacji musiałem też kliknąć Install Build Tools 27... and sync project
(nie pamiętam dokładnej wersji).
Po wykonaniu tych czynności, udało mi się pomyślnie uruchomić moją natywną aplikację react na emulatorze Android Studio.
Mam nadzieję, że to komuś pomoże!
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-07-23 22:44:30
- - - - Grudzień 2018 - - - zachowaj uwagę ---
React Native nie działa z wersją Javy wyższą niż 8, więc musisz odinstalować swoją wersję 9.0.1
. W tym celu wykonaj następujące polecenia:
cd /Library/Java/JavaVirtualMachines/
ls -l
Zidentyfikuj folder zawierający twoją wersję Javy, a następnie usuń ją
sudo rm -rf jdk.x.x_xxx.jdk
Następnie możesz ponownie pobrać i zainstalować Javę 8 z oracle. Zobacz jdk8 download page
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-02-07 13:12:24
Jeśli używasz systemu windows; upewnij się, że dodałeś ścieżkę jdk do zmiennej środowiskowej path. Następnie otwórz folder android z projektu React native w android studio. Automatycznie zaktualizuje niezbędne rzeczy.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-08-01 01:41:42
Zwykle dostaję ten błąd, gdy zapominam zbudować projekt za pomocą Android Studio. Prosta synchronizacja i aktualizacja Gradle wykona pracę.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-09-27 14:36:31
Rozwiązuję to obniżając mój JDK do 8.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-11-29 10:45:44
Na Ubuntu, powinieneś uruchomić te linie poleceń w Terminalu:
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt install oracle-java8-installer
sudo apt install oracle-java8-set-default
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-03-11 18:51:58