Have issue installing rJava, tried most troubleshooting steps here and doesn't work.
It's returning error
Loading required package: rJava
Error: package or namespace load failed for 'rJava':
.onLoad failed in loadNamespace() for 'rJava', details:
call: dyn.load(file, DLLpath = DLLpath, ...)
error: unable to load shared object '/Library/Frameworks/R.framework/Versions/3.4/Resources/library/rJava/libs/ rJava.so':
I'm on latest ver of R/Rstudio and Mac El Capitan
I also tried this method 1 which didn't work
sudo R CMD javareconf
Then, in the R interpreter:
install.packages('rJava', type='source')
install.packages('xlsx', type='source')
method 2
sudo ln -s $(/usr/libexec/java_home)/jre/lib/server/libjvm.dylib /usr/local/lib
error returned ln: /usr/local/lib/libjvm.dylib: File exists
method 3 install.packages("rJava", type = "binary") error: tar: Failed to set default locale
to deal with default locale error
system("defaults write org.R-project.R force.LANG en_US.UTF-8")
upon loading rJava, still same error:
image not found
So looks like it's installed but won't load
Here is my solution
Define path to R libraries, here R 3.4 version and open dir:
cd /Library/Frameworks/R.framework/Versions/3.4/Resources/lib
Remove libjvm.dylib:
rm libjvm.dylib
Create link to libjvm.dylib from Java libraries, here jdk1.8.0_151 version:
ln -s /Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/Home/jre/lib/server/libjvm.dylib libjvm.dylib
now go to R or RStudio and try:
library("rJava")
I did the same thing for java 9, it worked perfectly (macOS High Sierra), thanks:
cd /Library/Frameworks/R.framework/Versions/3.4/Resources/lib
rm libjvm.dylib
ln -s /Library/Java/JavaVirtualMachines/jdk-9.0.1.jdk/Contents/Home/lib/server/libjvm.dylib libjvm.dylib
I also had a lot of trouble with this and eventually found the following SO thread to be the most relevant: rJava load error in RStudio/R after "upgrading" to OSX Yosemite
Basically, starting from no installation of rJava, and starting in the terminal:
-f
flag will overwirte existing links avoiding the error you encountered in "method 2".$ sudo ln -f -s $(/usr/libexec/java_home)/jre/lib/server/libjvm.dylib /usr/local/lib
Then in RStudio:
options('java.home')
isn't NULL
, and set if necessary:options("java.home"="/Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home/jre")
JAVA_HOME
and LD_LIBRARY_PATH
environment variables are set, and set if not: Sys.setenv(JAVA_HOME='/Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home')
Sys.setenv(LD_LIBRARY_PATH='$JAVA_HOME/jre/lib/server')
After this I was able to install and load the rJava package in RStudio with
install.packages('rJava')
library(rJava)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With