Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

rJava installation fails on macOS 10.14

After upgrading to MacOS Mojave (10.14.1), I'm no longer able to install rJava for R version 3.5.1 with Java version "1.8.0_102" installed.

I tried the previous solution for MacOS 10.11 but it still did not work, giving this error:

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.5/Resources/library/rJava/libs/rJava.so':
 dlopen(/Library/Frameworks/R.framework/Versions/3.5/Resources/library/rJava/libs/rJava.so, 6): Library not loaded: /Library/Java/JavaVirtualMachines/jdk-9.jdk/Contents/Home/lib/server/libjvm.dylib
 Referenced from: /Library/Frameworks/R.framework/Versions/3.5/Resources/library/rJava/libs/rJava.so
 Reason: image not found
like image 950
JohnSG Avatar asked Nov 18 '25 12:11

JohnSG


2 Answers

Posting the solution I found in case it helps others -- I don't quite understand why this work or if it's the right way so looking for better alternatives!

This issue lead to this Apple forum where it's stated

For legacy software that looks for the macOS headers in the base system under /usr/include, please install the package file located at: /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14. pkg

To do this, open terminal and run these commands

cd /Library/Developer/CommandLineTools/Packages/
open macOS_SDK_headers_for_macOS_10.14.pkg

then follow prompts to install the package.

After this, in the terminal, configure rJava and install as in the previous answer

sudo R CMD javareconf

R -e "install.packages('rJava')"

and it should install without problem.

like image 107
JohnSG Avatar answered Nov 21 '25 02:11

JohnSG


After installing JDK 11.04 LTS I rain into the same error in R Studio on Mojave

R was expecting Library not loaded: /Library/Java/JavaVirtualMachines/jdk-11.0.1.jdk

Despite running sudo R CMD javareconf the error still persisted

Therefore I browsed to /Library/Java/JavaVirtualMachines/ in finder and renamed the folder "jdk-11.0.4.jdk" to "jdk-11.0.1.jdk"

Restarted R and both library(rJava) and library(xlsx) now work.

Hope this helps someone

like image 37
tomlincr Avatar answered Nov 21 '25 00:11

tomlincr



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!