web-dev-qa-db-ja.com

rJavaインストールエラー「レジストリからJava_HOMEを特定できません」

次のコマンドを使用して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プログラムを最新バージョンで再インストールしようとしましたが、それでもこれらのエラーが発生します。これを解決する方法を知っていますか?

27
Eric

このエラーは、多くの場合、使用するRバージョンのタイプに適合するJavaバージョン(つまり64ビットJavaまたは32ビットJava)をインストールすることで解決します。使用している(つまり、64ビットRまたは32ビットR)。Windows7ユーザーは、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-レジストリ/

19
Raja Anbazhagan

同じバージョンのRとJavaつまり64ビットをインストールし、パスを手動で更新することにより、同じエラーが解決されました。

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

64ビットをインストールJava from https://Java.com/en/download/manual.jsp
次に、Windows cmdを実行します
_setx PATH "C:\Program Files\Java\jre1.8.0_211\bin\server;%PATH%"_
(パスが正しいことを確認してください)。

次に、RStudioで実行します
Sys.setenv(Java_HOME="")

これで、rJavaを実行できるはずです!!

3

R for Windowsインストーラーは、デフォルトで32ビットファイルと64ビットファイルの両方をインストールします。 Rを再インストールして32ビットパーツのチェックを外すと、問題が解決しました。

3
TomaszGuzialek

これは私を殺しており、私は上記の複数の方法を試しましたが、うまくいきません。その後、私はすべてのソリューションをミックスして試してみて、プロセスが私のために働いています。

  1. インストールJava
  2. Windowsコマンドで以下のコードを実行
    _setx PATH "C:\Program Files\Java\jre1.8.0_171\bin\server;%PATH%"_
    (dvm.dllの実際のアドレスに対応するアドレスを変更してください)
  3. Rスタジオで以下を実行Sys.setenv(Java_HOME="")
    その後、私は最終的に実行することができます
    library(rJava)
    library(xlsx)
2
Xiao QianYu

上記のr統計リンクで述べたように、Javaの64ビットバージョンを手動でダウンロードする必要があります。そうでない場合は、32ビットバージョンがインストールされます。

したがって、64ビットオペレーティングシステムを使用している場合は、RとJavaが64ビットインストールを使用していることを確認してください。それ以外の場合、この問題は解決しません。

2
Shawn Cefalu