R - 错误 : . onLoad 在 loadNamespace() 中失败 'rJava'

标签 r rjava

加载时 rJava包,我收到此错误:

Error : .onLoad failed in loadNamespace() for 'rJava', details:
  call: inDL(x, as.logical(local), as.logical(now), ...)

error: unable to load shared object 'C:/Users/ankitagarwal5/Documents/R/win-library/3.2/rJava/libs/x64/rJava.dll':
  LoadLibrary failure:  %1 is not a valid Win32 application.

In addition: Warning message:
  package ‘rJava’ was built under R version 3.2.3 
Error: package or namespace load failed for ‘rJava’


我引用了 StackOverflow 上的各种帖子并尝试进行相应的更改,但没有任何效果。这些是我为解决问题而遵循的各种步骤:
if (Sys.getenv("JAVA_HOME")!="")
  Sys.setenv(JAVA_HOME="")
library(rJava)

这没有用。

然后我尝试了这个:
options(java.home="C:\\Program Files\\Java\\jre1.8.0_91\\")
library(rJava)

这也不起作用。

我的 jvm.dll 位于我的 Windows 7 64 位操作系统的这个位置 - C:\Program Files (x86)\Java\jre1.8.0_91\bin\client

我还加了 C:\Program Files (x86)\Java\jre1.8.0_91\bin\client到我的环境变量中的 PATH 变量并重新启动 RStudio 并尝试再次安装和加载 rJava。那也没有用。

如果有人能帮我解决这个问题,我将不胜感激。

谢谢你们!

最佳答案

这对我有用 -

通常通过安装适合您使用的 R 版本类型(即 64 位 R 或 32 位 R)的 Java 版本(即 64 位 Java 或 32 位 Java)来解决此错误。此问题很容易影响 Windows 7 用户,因为他们安装的 Java 版本可能与他们使用的 R 版本不同。

请注意,必须“手动下载并安装”64 位版本的 JAVA。默认情况下,下载页面提供 32 位版本。

您可以从此链接选择要安装的 Java 的确切版本。如果您可能(出于某种原因)在两个版本的 R 上工作,您可以安装两个版本的 Java(安装“Java 运行时环境”可能足以满足您的需求)。
(来源:Uwe Ligges)

其他可能的解决方案是尝试重新安装 rJava。

如果这不起作用,您还可以通过在加载库之前进行设置来手动设置 Java 位置的目录:

Sys.setenv(JAVA_HOME='C:\\Program Files\\Java\\jre7') # for 64-bit version
Sys.setenv(JAVA_HOME='C:\\Program Files (x86)\\Java\\jre7') # for 32-bit version
library(rJava)

请参阅此链接 - http://www.r-bloggers.com/how-to-load-the-rjava-package-after-the-error-java_home-cannot-be-determined-from-the-registry/

关于R - 错误 : . onLoad 在 loadNamespace() 中失败 'rJava',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37735108/

相关文章:

java - 无法在 ubuntu 系统上安装 rJava

r - 对来自与 rowname 匹配的两个数据帧的数据求和

R:扩展 DF 单元格的内容

r - 将逗号分隔的字符串拆分为 bool 列

r - JRI 可以访问 Vista 上用户安装的软件包吗?

升级到 OSX Catalina 后,R/Rstudio 中的 rJava 加载失败

r - 使用 ggplot2 绘图的不规则时间序列未正确缩放并且看起来很拥挤

r - 按组计算数据框中出现的连续月份

java - sudo R CMD javareconf 解决方案不起作用

read.xlsx 需要很长的时间和大量的内存