我安装了iplots和rjava包.当我这个库(iplots),我得到以下错误.我的电脑上安装了JDK.
Loading required package: rJava
Error : .onLoad failed in loadNamespace() for 'rJava', details:
call: fun(libname, pkgname)
error: JAVA_HOME cannot be determined from the Registry
Run Code Online (Sandbox Code Playgroud)
错误:无法加载包'rJava'
nog*_*pes 26
该错误告诉您,您的注册表中没有条目告诉R您的计算机上的Java所在的位置.您的注册表损坏,但更有可能您没有安装Java.您可以安装Java Runtime Environment或Java Development Kit.
如果您安装了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
}
Run Code Online (Sandbox Code Playgroud)
将其复制并粘贴到R窗口中,然后运行它find.java().rJava正在为JavaHome寻找一个条目.如果未列出,则表示注册表中缺少该文件.
您还可以通过在加载库之前设置它来手动设置Java位置的目录:
Sys.setenv(JAVA_HOME='C:\\Your\\Java\\Directory')
library(rJava)
Run Code Online (Sandbox Code Playgroud)