studio react code react-native gradle

react native - react - Reaccionar error nativo: "No se pudo determinar la versión de Java desde ''9.0.1''".



react native git (11)

Estoy trabajando en MacOS y recién comenzando con react-native .

Uno de los primeros pasos para comenzar es ejecutar: react-native run-android o react-native run-ios . Pero recibo este error:

react-native run-android

Resultado:

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

Esto es lo que obtengo cuando ejecuto java --version :

java --version

Resultado:

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)

Editar

Mi versión javac:

javac --version

Resultado:

javac 9.0.1

Alguna idea de como arreglar esto?


Asegúrese de tener instalado JDK8 y luego configure JAVA_HOME en JDK8

por ejemplo:

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

o use archivos .bash_* para establecer esta variable


En MacOS, ejecuté los siguientes comandos:

brew cask uninstall java brew tap caskroom/versions brew cask install java8 "or just brew cask install java to install latest version"


En Ubuntu, debe ejecutar estas líneas de comando en la terminal:

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


En su archivo PROJECT_PATH/android/gradle/wrapper/gradle-wrapper.properties , actualice su distributionUrl a lo siguiente:

distributionUrl=https/://services.gradle.org/distributions/gradle-5.0-all.zip

Ver documentación relacionada con distribuciones de gradle


Estaba recibiendo este error, pero para una versión más reciente de Java - 10.0.2.

Para corregir mi error, seguí los pasos mencionados por @Blacktoviche en este número de Github: https://github.com/facebook/react-native/issues/17688

Cuando abrí la carpeta de android dentro de mi proyecto a través de Android Studio, se me Android Gradle plugin update recommended . En ese momento, estaba siguiendo un tutorial un poco desactualizado que me decía que hiciera clic en Don''t remind me again for this project .

Sin embargo, como @Blacktoviche recomendó en el problema de github vinculado anteriormente, a veces es necesario actualizar el complemento Gradle. Después de actualizar, también tuve que hacer clic en Install Build Tools 27... and sync project (no recuerdo la versión exacta).

Después de seguir estos pasos, pude ejecutar con éxito mi aplicación nativa react en el emulador de Android Studio.

¡Espero que esto ayude a alguien!


Por lo general, aparece este error cuando me olvido de construir el proyecto con Android Studio. Una simple sincronización y actualización de Gradle hará el trabajo.


React Native no funciona con versiones de Java superiores a 8, por lo que debe desinstalar su versión 9.0.1 . Para hacerlo, ejecute los siguientes comandos:

cd /Library/Java/JavaVirtualMachines/ ls -l

Identifique la carpeta que contiene su versión de Java, luego quítela

sudo rm -rf jdk.x.x_xxx.jdk

Después de eso, puede descargar e instalar Java 8 desde Oracle nuevamente. Consulte la página de descarga de jdk8



Resuelvo esto bajando mi JDK a 8.


Si estás usando windows; Asegúrese de agregar su ruta jdk a la variable de ruta del entorno. Luego, abra su carpeta de Android desde su proyecto nativo react en el estudio de Android. Actualizará las cosas necesarias para usted automáticamente.


vi ~/.bash_profile

Luego agregue las siguientes líneas:

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)

Ahora obtenga el archivo para que los cambios anteriores sean efectivos en el shell actual:

source ~/.bash_profile