問題描述
library(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 '/Users/kevin/Library/R/3.4/library/rJava/libs/rJava.so':
dlopen(/Users/kevin/Library/R/3.4/library/rJava/libs/rJava.so, 6): Library not loaded: @rpath/libjvm.dylib
Referenced from: /Users/kevin/Library/R/3.4/library/rJava/libs/rJava.so
Reason: image not found
無法加載xlsx和rJava package围段。和上面情況類似
原因
https://github.com/rstudio/rstudio/issues/2254
上面鏈接有說润梯。簡(jiǎn)單點(diǎn)說闲昭,就是package "xlsx"和"rjava"需要用到libjvm.dylib,但是Rstudio/R找不到該文件陪每。
不可行的解決方法
先安裝"rJava",在安裝“xlsxjars”,最后安裝“xlsw”哀峻。這個(gè)方法應(yīng)該不適用于本文前面所述問題。
比較麻煩的解決方法
https://stackoverflow.com/questions/17092663/64bit-libjvm-dylib-on-mac-os-x
https://github.com/rstudio/rstudio/issues/2254
修改path等等哲泊。
比較簡(jiǎn)單的方法
第一步:下載jdk-9
注意剩蟀,官網(wǎng)已經(jīng)不提供jdk-9的下載,最新版11和舊版8有提供切威。但是package的要求應(yīng)該是jdk-9育特。所以百度一下,找個(gè)jdk-9先朦。
第二步:修改名字
我所找到的jdk-9犬缨,是jdk9.0.4。rstudio會(huì)給出具體的錯(cuò)誤信息棉浸,包括jdk-9應(yīng)該在的地方。
但是因?yàn)槲蚁螺d的是jdk-9.0.4迷郑,所以與package指定的路徑不同。
這時(shí)候需要打開terminal三热,然后輸入
cd /Library/Java/Javavirtualmechanics/
sudo -s (http://www.reibang.com/p/138b98e662ed獲得改名字的權(quán)限)
mv jdk-9.0.4.jdk jdk-9.jdk
第三步:重啟rstudio即可鼓择。
另外還有可能出現(xiàn)問題的原因是下載了最新版的R 3.5就漾,建議用回3.4.4,因?yàn)閜ackage是基于 R3.4.4寫的抑堡。
。