如何在64位Windows计算机上安装rJava与64位R一起使用?

我安装了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

错误:package’rJava’无法加载

错误告诉您,注册表中没有条目告诉R您的机器上的Java位于何处。您的注册表已损坏,但更有可能您没有安装Java。您可以安装Java运行时环境或Java开发工具包。

(You can download Java here.)

如果您安装了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)

相关文章

Windows2012R2备用域控搭建 前置操作 域控主域控的主dns:自...
主域控角色迁移和夺取(转载) 转载自:http://yupeizhi.blo...
Windows2012R2 NTP时间同步 Windows2012R2里没有了internet时...
Windows注册表操作基础代码 Windows下对注册表进行操作使用的...
黑客常用WinAPI函数整理之前的博客写了很多关于Windows编程的...
一个简单的Windows Socket可复用框架说起网络编程,无非是建...