Błąd jest informacją, że nie ma żadnego wpisu w rejestrze, który mówi gdzie R Java znajduje się na komputerze. Albo twój rejestr jest uszkodzony, ale prawdopodobnie nie zainstalowałeś Javy. Można zainstalować środowisko Java Runtime Environment lub Java Development Kit.
(You can download Java here.)
Jeśli zainstalowana Java, spróbuj ponownie zainstalować go. To powinno przywrócić wpisy do rejestru.
Jeśli to nie zadziała, możesz zacząć dokładnie sprawdzać, gdzie R szuka wpisów rejestru. Funkcja, którą rJava wykorzystuje do znalezienia Javy, znajduje się w funkcji rJava :::. OnLoad. W ramach tej funkcji znajduje się podfunkcja o nazwie find.java. I skopiować zawartość tutaj:
find.java <- function() {
for (root in c("HLM", "HCU")) for (key in c("Software\\JavaSoft\\Java Runtime Environment",
"Software\\JavaSoft\\Java Development Kit")) {
hive <- try(utils::readRegistry(key, root, 2),
silent = TRUE)
if (!inherits(hive, "try-error"))
return(hive)
}
hive
}
Kopiuj i wklej to do swojego okna R, a następnie uruchomić go find.java()
. rJava szuka wpisu dla JavaHome. Jeśli tego nie ma na liście, brakuje go w rejestrze.
Można również ręcznie ustawić katalogu lokalizacji Java przez ustawienie go przed załadowaniem biblioteki:
Sys.setenv(JAVA_HOME='C:\\Your\\Java\\Directory')
library(rJava)
Powyższe informacje są poprawne. Ponadto zwróć uwagę, że będziesz potrzebować pasujących architektur dla R i Java (jeśli korzystasz z 64-bitowego systemu Windows). W ostateczności możesz ustawić JAVA_HOME tak, aby wskazywała na instalację w Javie, ale zazwyczaj powyższe oznacza, że coś jest nie tak z Twoją instalacją Java. –
JDK jest zainstalowany na moim komputerze pc.java -version wersja Java "1.6.0_20" Środowisko wykonawcze Java (TM) SE (wersja 1.6.0_20-b02) Klient wirtualny Java HotSpot (TM) (wersja 16.3-b01, wersja mieszana tryb, dzielenie się) –
Zrobiłem kilka dodatków w mojej odpowiedzi. – nograpes