React Native error: “Imansible determinare la versione java da ‘9.0.1’.”

Sto lavorando su MacOS e sto iniziando con react-native .

Uno dei primi passi per iniziare è quello di eseguire: run react-native run-android o react-native run-ios . Ma sto ricevendo questo errore:

 $ 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 

Questo è ciò che ottengo quando java --version :

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

EDITED : questo è quello che ottengo quando javac --version :

 $ javac --version javac 9.0.1 

Qualche idea su come risolvere questo problema?

    Nel file,

    Project_path / android / Gradle / involucro / gradle-wrapper.properties

    Aggiorna il tuo distributionUrl al seguente

     distributionUrl=https\://services.gradle.org/distributions/gradle-4.3-rc-2-all.zip 

    Il modo più veloce per ovviare a questo errore è utilizzare JDK 8. Tranne quando è veramente necessario utilizzare JDK9.

    http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

    Non dimenticare di cambiare la tua variabile ambientale JAVA_HOME nella nuova versione di JDK!

    assicurati di aver installato JDK8 e poi imposta JAVA_HOME in JDK8

    per esempio:

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

    oppure usa i file .bash_ * per impostare questa variabile

    Dovresti eseguire queste righe di comando nel terminale

     $ sudo add-apt-repository ppa:webupd8team/java $ sudo apt-get update $ sudo apt install oracle-java8-installer $ sudo apt install oracle-java8-set-default 

    Stavo ricevendo questo errore, ma per una versione più recente di Java – 10.0.2.

    Per correggere il mio errore, ho seguito i passaggi indicati da @Blacktoviche in questo numero di Github: https://github.com/facebook/react-native/issues/17688

    Quando ho aperto la cartella android all’interno del mio progetto tramite Android Studio, mi è stato richiesto di Android Gradle plugin update recommended . A quel tempo, stavo seguendo un tutorial un po ‘obsoleto che mi diceva di fare clic su Don't remind me again for this project .

    Tuttavia, come raccomandato da @Blacktoviche nel problema github sopra citato, a volte è necessario aggiornare il plugin Gradle. Dopo l’aggiornamento, ho anche dovuto fare clic su Install Build Tools 27... and sync project (non ricordo la versione esatta).

    Dopo aver seguito questi passaggi, sono riuscito a eseguire correttamente la mia app nativa retriggers sull’emulatore di Android Studio.

    Spero che questo aiuti qualcuno!

    Se stai usando Windows; Assicurati di aggiungere il tuo percorso jdk alla variabile del percorso Ambiente. Quindi apri la tua cartella Android dal tuo progetto nativo reattivo in Android Studio. Aggiorna automaticamente le cose necessarie per te.

    => vi ~. / bash_profile

    1. export ANDROID_HOME = $ HOME / Libreria / Android / sdk
    2. export PATH = $ PATH: $ ANDROID_HOME / tools
    3. export PATH = $ PATH: $ ANDROID_HOME / tools / bin
    4. export PATH = $ PATH: $ ANDROID_HOME / piattaforma-strumenti
    5. export JAVA_HOME = $ (/ usr / libexec / java_home -v 1.8)

    ===================== => Fonte ~. / Bash_profile