R의 레지스트리 오류에서 JAVA_HOME을 확인할 수 없는 문제 수정
오늘은 R 프로그래밍 사용 중 JAVA_HOME을 레지스트리에서 확인할 수 없습니다
라는 오류를 재현해 보겠습니다. 다음으로, 이 오류가 무엇을 의미하는지 이해하여 해결책을 찾을 수 있는 가능한 이유를 알아낼 것입니다.
R에서 오류: JAVA_HOME을 레지스트리에서 확인할 수 없음
수정
예제 코드:
> # install xlsx package
> install.packages("xlsx")
> # load xlsx package
> library("xlsx")
위의 예제 코드에서 R 프로그래밍을 사용하여 JAVA_HOME을 레지스트리에서 확인할 수 없습니다
오류를 복제하고 있습니다. install.packages("xlsx")
를 사용하여 패키지를 설치하고 library("xlsx")
를 사용하여 로드하지만 다음 오류가 발생합니다.
오류 설명:
이 오류는 Java를 찾을 위치를 R에 알려주는 Resitry
에 항목이 없음을 의미합니다. 이제 문제는 왜 우리가 이 오류에 직면하고 있는가 하는 것입니다.
xlsx
패키지로 인해 이 오류가 발생하지만 그렇지 않습니다. rJava
패키지 덕분입니다.
어떻게? xlsx
패키지를 설치하려고 할 때 R도 rJava
패키지 설치를 시도하기 때문입니다.
또 다른 요점은 R이 rJava
패키지를 설치하려고 하면 JAVA_HOME이 레지스트리에서 확인할 수 없음
오류가 발생하는 이유는 무엇입니까? 이 오류의 원인은 다음과 같습니다.
-
함께 작동할 수 없는 호환되지 않는 버전의 R과 Java가 있습니다. 예를 들어 R 64비트 버전이 있고 Java는 32비트 버전이 있습니다.
다음 코드를 실행하여 컴퓨터에 있는 Java 및 R 버전을 확인할 수 있습니다.
버전 확인을 위한 예제 코드:
> # Check R Version > Sys.getenv("R_ARCH") > # Check Java Version > system("java -version")
-
머신에 Java가 설치되어 있지 않거나
레지스트리
가 손상된 경우에도 이 오류가 발생합니다. -
32비트와 64비트 모두 여러 버전의 Java를 설치했을 수 있습니다. 따라서 여기에서 R 프로그래밍과 함께 사용하기 위해 올바른 버전의 Java를 가리키고 있는지 확인해야 합니다.
-
또 다른 이유는 64비트 버전의 운영 체제와 R이 있지만 동일한 아키텍처의 Java가 없기 때문일 수 있습니다.
어떻게 고칠 수 있습니까? 현재 컴퓨터에서 실행 중인 R 버전과 호환되는 Java 버전을 설치하여 제거할 수 있습니다.
R이 32비트 또는 64비트인 경우 Java 32비트 또는 64비트를 각각 설치합니다.
다른 버전의 Java를 사용하려면 Java를 수동으로 다운로드 및 설치해야 합니다. 다운로드 페이지는 기본적으로 32비트 버전의 Java를 사용합니다.
다음으로 Java를 설치한 후 R과 브라우저를 다시 시작하는 것을 잊지 마십시오. 우리의 경우 Java 8 업데이트 202 64비트 버전을 설치하여 문제를 해결했습니다.