rJava安装错误“无法从注册表中确定JAVA_HOME”

问题描述 投票:25回答:6

我正在尝试使用以下命令加载rJava:

 library(rJava)

但是我收到以下错误:

 Error : .onLoad failed in loadNamespace() for 'rJava', details:
   call: fun(libname, pkgname)
   error: JAVA_HOME cannot be determined from the Registry
 Error: package or namespace load failed for ‘rJava’

我尝试用最新版本重新安装Java和R程序,但仍然遇到这些错误..我可以知道如何解决这个问题吗?非常感谢你!

java r error-handling rjava
6个回答
17
投票

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

http://www.r-statistics.com/2012/08/how-to-load-the-rjava-package-after-the-error-java_home-cannot-be-determined-from-the-registry/


7
投票

我通过安装相同版本的R和Java(即64位)并手动更新路径来解决相同的错误,即:

Sys.setenv(JAVA_HOME='C:/Program Files/Java/jre1.8.0_121') # for 64-bit version

3
投票

R for Windows安装程序默认安装32位和64位文件。重新安装R并解开32位部分解决了我的问题。


3
投票

https://java.com/en/download/manual.jsp安装64位Java。 然后在windows cmd中运行 setx PATH "C:\Program Files\Java\jre1.8.0_211\bin\server;%PATH%" (确保你的路径是正确的)。

然后在RStudio中运行 Sys.setenv(JAVA_HOME="")

现在,你应该能够运行rJava !!


2
投票

如上面引用的r-statistics链接所述,您必须手动下载64位版本的Java。如果没有,那么将安装32位版本。

因此,如果您有64位操作系统,请确保R和Java都使用64位安装。否则,这个问题将持续存在。


2
投票

这已经杀了我,我尝试了上面的多种方法,它不起作用。之后,我将所有解决方案混合尝试,以下流程适合我。

  1. 安装64位Java
  2. 在windows命令中运行以下代码 qazxsw poi (请根据您的dvm.dll真实地址更改地址)
  3. 在R studio setx PATH "C:\Program Files\Java\jre1.8.0_171\bin\server;%PATH%"下面运行 然后我终于可以跑了 Sys.setenv(JAVA_HOME="") library(rJava)
© www.soinside.com 2019 - 2024. All rights reserved.