[react-native] React Native 오류 : ” ‘9.0.1’에서 Java 버전을 확인할 수 없습니다.”

저는 MacOS에서 작업 중이며 react-native.

시작하기위한 첫 번째 단계 중 하나는 다음을 실행하는 것입니다. react-native run-android또는 react-native run-ios. 하지만이 오류가 발생합니다.

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

이것은 내가 실행할 때 얻는 것입니다 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)

편집하다

내 javac 버전 :

javac --version

결과:

javac 9.0.1

이 문제를 해결하는 방법에 대한 아이디어가 있습니까?



답변

당신의에서 PROJECT_PATH/android/gradle/wrapper/gradle-wrapper.properties파일, 당신을 업데이트distributionUrl 다음에 :

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

관련 Gradle 배포 문서 참조


답변

이 오류를 해결하는 가장 빠른 방법은 JDK 8을 사용하는 것입니다. JDK9를 실제로 사용해야하는 경우는 예외입니다.

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

환경 변수 JAVA_HOME을 새 JDK 버전으로 변경하는 것을 잊지 마십시오!


답변

당신이 있는지 확인 JDK8설치 후 설정 JAVA_HOMEJDK8

예를 들면 :

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

또는 .bash_*파일을 사용하여이 변수를 설정하십시오.


답변

vi ~/.bash_profile

그런 다음 다음 행을 추가하십시오.

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)

이제 파일을 소싱하여 현재 쉘에서 위의 변경 사항을 적용하십시오.

source ~/.bash_profile 


답변

MacOS에서 다음 명령을 실행했습니다.

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


답변

이 오류가 발생했지만 최신 버전의 Java-10.0.2.

오류를 수정하기 @Blacktoviche위해이 Github 문제에서 언급 한 단계를 따랐습니다 . https://github.com/facebook/react-native/issues/17688

androidAndroid Studio를 통해 프로젝트 내의 폴더를 열었을 때 Android Gradle plugin update recommended. 그 당시 저는를 클릭하라는 약간 오래된 튜토리얼을 따르고있었습니다 Don't remind me again for this project.

그러나 @Blacktoviche위에 링크 된 github 문제에서 권장하는대로 Gradle 플러그인을 업데이트해야하는 경우가 있습니다. 업데이트 후에는 클릭해야했습니다 Install Build Tools 27... and sync project(정확한 버전이 기억 나지 않습니다).

이 단계를 따른 후 Android Studio 에뮬레이터에서 반응 네이티브 앱을 성공적으로 실행할 수있었습니다.

이것이 누군가를 돕기를 바랍니다!


답변

—- 2018 년 12 월 —주의 사항 — React Native는 Java 버전 8 이상에서는 작동하지 않으므로 버전을 제거해야합니다 9.0.1. 이렇게하려면 다음 명령을 실행하십시오.

cd /Library/Java/JavaVirtualMachines/
ls -l

Java 버전이 포함 된 폴더를 식별 한 다음 제거하십시오.

sudo rm -rf jdk.x.x_xxx.jdk

그런 다음 Oracle에서 Java 8을 다시 다운로드하여 설치할 수 있습니다. 를 참조하십시오 jdk8 다운로드 페이지