Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Unable to load rJava on R

Tags:

r

rjava

I wish to load rJava in R x64 3.1.2. OS- Windows 8.1 64 bit

Though installation seems to work fine:

  > 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 

I get an error while loading the package:

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’ 

I know that I am working on R-64 bit and at same time the environment variable Path is set to:

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

also, so the Java version is 64 bit too. I don't understand the reason behind the error.

On manually setting through R:

options(java.home="C:\\Program Files\\Java\\jdk1.7.0_51\\bin") library(rJava) 

I get this error:

enter image description here

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’ 

Any advice? The error seems to have cropped up after I uninstalled some old version of Java.

OTHERS: Also just to add, I do not set JAVA_HOME as a environment variable.

Uninstalling and Reinstalling R also doesn't seem to fix the problem.

Removing older java versions is too of no help.

like image 697
Abhishek Bhatia Avatar asked Dec 26 '14 19:12

Abhishek Bhatia


People also ask

What is rJava package?

rJava provides a low-level bridge between R and Java (via JNI). It allows to create objects, call methods and access fields of Java objects from R. rJava release versions can be obtained from CRAN - usually install. packages("rJava") in R will do the trick.


1 Answers

Use:

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

e.g.

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

Your environment variable is wrong.

like image 92
qjgods Avatar answered Sep 21 '22 17:09

qjgods