wake-up-neo.net

Nativer Fehler: "Java-Version konnte nicht von '9.0.1' ermittelt werden."

Ich arbeite an MacOS und beginne gerade mit react-native.

Einer der ersten Schritte ist der Start: react-native run-Android oder react-native run-ios. Aber ich bekomme diesen Fehler:

$ react-native run-Android
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

Folgendes bekomme ich, wenn ich Java --version betreibe:

$ 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)
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)

BEARBEITET: Dies bekomme ich, wenn ich javac --version:

$ javac --version
javac 9.0.1

Irgendeine Idee, wie man das beheben kann?

82
Xar

Im Ordner,

PROJECT_PATH/Android/gradle/wrapper/gradle-wrapper.properties

Aktualisieren Sie Ihre distributionUrl wie folgt

distributionUrl=https\://services.gradle.org/distributions/gradle-5.0-all.Zip
159
Muhammad Adeel

Die schnellste Möglichkeit, diesen Fehler zu umgehen, ist die Verwendung von JDK 8. Außer wenn Sie wirklich JDK9 verwenden müssen. 

http://www.Oracle.com/technetwork/Java/javase/downloads/jdk8-downloads-2133151.html

Vergessen Sie nicht, Ihre Umgebungsvariable Java_HOME in die neue JDK-Version zu ändern! 

24
Xen_mar

stellen Sie sicher, dass Sie JDK8 installiert haben, und setzen Sie Java_HOME in JDK8 ein

zum Beispiel:

export Java_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/Home

oder verwenden Sie .bash_ * -Dateien, um diese Variable festzulegen

14
bobu

=> vi ~./bash_profile

  1. export Android_HOME = $ HOME/Bibliothek/Android/sdk
  2. export PATH = $ PATH: $ Android_HOME/tools
  3. export PATH = $ PATH: $ Android_HOME/tools/bin
  4. export PATH = $ PATH: $ Android_HOME/Plattform-Tools
  5. java_HOME = $ exportieren (/ usr/libexec/Java_home -v 1.8)

======================... => Source ~ 

6
sotheng ski

Auf Mac lief ich

brew cask uninstall Java
brew tap caskroom/versions
brew cask install Java8
4
Andres Felipe

Ich habe diese Fehlermeldung erhalten, aber für eine neuere Version von Java - 10.0.2.

Um diesen Fehler zu beheben, habe ich die in dieser Github-Ausgabe von @Blacktoviche genannten Schritte befolgt: https://github.com/facebook/react-native/issues/17688

Als ich den Ordner Android in meinem Projekt über Android Studio geöffnet habe, wurde ich mit Android Gradle plugin update recommended gefragt. Zu dieser Zeit verfolgte ich ein etwas veraltetes Tutorial, in dem ich aufgefordert wurde, auf Don't remind me again for this project zu klicken.

Da @Blacktoviche in dem oben verlinkten github-Problem empfohlen wird, ist es manchmal erforderlich, das Gradle-Plugin zu aktualisieren. Nach dem Update musste ich auch auf Install Build Tools 27... and sync project klicken (ich erinnere mich nicht an die genaue Version).

Nachdem ich diese Schritte befolgt hatte, konnte ich meine reaktive native App erfolgreich auf dem Android Studio-Emulator ausführen.

Hoffe das hilft jemandem!

React Native funktioniert nicht mit größeren Java-Versionen als 8

Sie müssen also Ihre Version 9.0.1 deinstallieren

cd /Library/Java/JavaVirtualMachines/ ls Identifizieren Sie den Ordner, der Ihre Java-Version Enthält, und entfernen Sie ihn Sudo rm -rf jdk.x.x_xxx.jdk .

Danach können Sie Java 8 erneut von Oracle herunterladen und installieren

https://www.Oracle.com/technetwork/pt/Java/javase/downloads/jdk8-downloads-2133151.html

1

Ich löse dies, indem ich mein JDK auf 8 herabstufen.

1
Gurzoni

Sie sollten diese Befehlszeilen im Terminal ausführen

$ Sudo add-apt-repository ppa:webupd8team/Java
$ Sudo apt-get update
$ Sudo apt install Oracle-Java8-installer
$ Sudo apt install Oracle-Java8-set-default
1

Wenn Sie Fenster verwenden; Stellen Sie sicher, dass Sie Ihren jdk-Pfad zur Umgebungspfadvariablen hinzufügen. .__ Öffnen Sie dann Ihren Android-Ordner von Ihrem reaktiven Projekt in Android Studio. Es aktualisiert automatisch die notwendigen Dinge für Sie.

0
Shaon

Diese Fehlermeldung wird normalerweise angezeigt, wenn ich vergesse, das Projekt mit Android Studio zu erstellen. Ein einfaches Synchronisieren und Aktualisieren von Gradle erledigt die Arbeit.

0
Nick Rameau