加载ReporteRs包时rJava导致的错误

时间:2015-04-01 06:40:56

标签: r rjava reporters

我在R中加载ReporteRs时遇到问题。我收到以下消息:

Loading required package: ReporteRsjars
Error : .onLoad failed in loadNamespace() for 'rJava', details:
  call: fun(libname, pkgname)
  error: No CurrentVersion entry in Software/JavaSoft registry! Try 
re-installing Java and make sure R and Java have matching architectures.
Error: package ‘ReporteRsjars’ could not be loaded

我安装了Java版“1.8.0_25”,rJavaggplot2ReporteRsjars

1 个答案:

答案 0 :(得分:3)

以下是一系列可供您探索的解决方案:

安装最新的rJava版本。 早期版本可能无法正常工作!镜子不是最新的,所以请访问www.rforge.net上的来源:http://www.rforge.net/rJava/files/。注意那里的建议 “请使用install.packages('rJava',,'http://www.rforge.net/')进行安装。”

这几乎是正确的。这实际上有效: install.packages('rJava', .libPaths()[1], 'http://www.rforge.net/') 观看标点符号!神秘的“.libPaths()[1],”只是告诉R将软件包安装在主库目录中。出于某种原因,将值保留为空白不起作用,即使它应该是默认值。

告诉R有关更新的java版本 如果您刚刚更改了Java版本,请通过从终端运行R CMD javareconf使R知道这一点。

将jvm.dll添加到PATH并将其保存在正确的目录中 RJava是R-Java桥,它需要jvm.dll,但R很难找到它。它驻留在像这样的文件夹中 C:\ Program Files \ Java \ jdk1.6.0_25 \ jre \ bin \ server 要么 C:\ Program Files \ Java \ jre6 \ jre \ bin \ client 无论你在哪里,将该目录添加到你的Windows PATH变量。 (Windows - >“路径” - >“为您的帐户编辑环境变量” - >路径 - >编辑值。)

您的PATH上可能已有Java。如果是这样,您应该在与PATH上已有的Java“home”目录中找到客户端/服务器目录。

似乎rJava在〜\ Java \ jre6 \ bin \ client中搜索jvm.dll。但是我的系统上没有这个文件夹(jvm.dll在〜\ bin \ server中)。因此,一种解决方法是在〜\ bin \ client \文件夹中制作jvm.dll的副本,并将其添加到路径中。

定义R查找java的路径 选项(java.home =“C:/ Program Files / Java / jre7 /”) 适当改变

确保您的架构匹配。 如果你在Program Files中有Java,它是64位的,所以你应该运行R64。如果你有程序文件(x86)中的Java,那是32位,所以你使用普通的32位R。

从Windows菜单重新启动R 如果R正在运行,请退出。 从开始菜单,启动R / RGUI,RStudio。这是非常重要的,让R拿起你的PATH变化。