R に rJava をロードできません 質問する

R に rJava をロードできません 質問する

R x64 3.1.2 に rJava をロードしたい。OS - Windows 8.1 64 ビット

インストールは正常に動作しているようですが、

  > install.packages("rJava")
    Installing package into ‘C:/Users/sony/Documents/R/win-library/3.1’
    (as ‘lib’ is unspecified)
    --- Please select a CRAN mirror for use in this session ---
    trying URL 'http://cran.utstat.utoronto.ca/bin/windows/contrib/3.1/rJava_0.9-6.zip'
    Content type 'application/zip' length 758898 bytes (741 Kb)
    opened URL
    downloaded 741 Kb

package ‘rJava’ successfully unpacked and MD5 sums checked

The downloaded binary packages are in
        C:\Users\sony\AppData\Local\Temp\RtmpamYUH7\downloaded_packages

パッケージの読み込み中にエラーが発生します:

library(rJava)
Error in get(Info[i, 1], envir = env) : 
  lazy-load database 'C:/Users/sony/Documents/R/win-library/3.1/rJava/R/rJava.rdb' is corrupt
In addition: Warning message:
In get(Info[i, 1], envir = env) : internal error -3 in R_decompress1
Error: package or namespace load failed for ‘rJava’

私は R-64 ビットで作業しており、同時に環境変数 Path が次のように設定されていることを知っています。

C:\Program Files\Java\jdk1.7.0_51\bin;C:\Program Files\Java\jre7\bin\server;

また、Java バージョンも 64 ビットです。エラーの原因がわかりません。

R 経由で手動で設定する場合:

options(java.home="C:\\Program Files\\Java\\jdk1.7.0_51\\bin")
library(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/sony/Documents/R/win-library/3.1/rJava/libs/x64/rJava.dll':
  LoadLibrary failure:  The specified module could not be found.

Error: package or namespace load failed for ‘rJava’

何かアドバイスはありますか? 古いバージョンの Java をアンインストールした後にエラーが発生したようです。

その他: また、JAVA_HOME を環境変数として設定していないことも付け加えておきます。

R をアンインストールして再インストールしても問題は解決しないようです。

古い Java バージョンを削除しても役に立ちません。

ベストアンサー1

使用:

Sys.setenv(JAVA_HOME='...path to JRE...')

例えば

Sys.setenv(JAVA_HOME='C:\\Program Files\\Java\\jdk1.7.0_51\\jre')

環境変数が間違っています。

おすすめ記事