Ошибка говорит о том, что в вашем Реестре нет записи, которая сообщает R, где находится Java на вашем компьютере. Ваш реестр поврежден, но, скорее всего, вы не установили Java. Вы можете установить либо Java Runtime Environment, либо Java Development Kit.
(Вы можете скачать Java здесь.)
Если вы установили Java, попробуйте переустановить его. Это должно положить записи обратно в ваш реестр.
Если это не сработает, вы можете начать искать именно там, где R ищет ваши записи в реестре. Функция, которую rJava использует для поиска Java, находится в функции rJava :::. OnLoad. Внутри этой функции есть подфункция find.java. Я копирую содержимое здесь:
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
}
Скопируйте и вставьте его в окно R, а затем запустите find.java()
. rJava ищет запись для JavaHome. Если этого нет в списке, значит, он отсутствует в вашем реестре.
Вы также можете вручную установить каталог вашего местоположения Java, установив его перед загрузкой библиотеки:
Sys.setenv(JAVA_HOME='C:\\Your\\Java\\Directory')
library(rJava)