安装rJava时出现问题,尝试了大多数问题排查步骤here并且无法正常工作。
它返回错误
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':
关于R / Rstudio和Mac El Capitan的最新版本
我也试过这个方法1,但没有工作
sudo R CMD javareconf
然后,在R解释器中:
install.packages('rJava', type='source')
install.packages('xlsx', type='source')
方法2
sudo ln -s $(/usr/libexec/java_home)/jre/lib/server/libjvm.dylib /usr/local/lib
错误返回ln:/usr/local/lib/libjvm.dylib:文件存在
方法3 install.packages(" rJava",type =" binary") 错误:tar:无法设置默认语言环境
处理默认语言环境错误
system("defaults write org.R-project.R force.LANG en_US.UTF-8")
加载rJava后,仍然出现同样的错误:
image not found
所以看起来已安装但未加载
答案 0 :(得分:5)
这是我的解决方案
定义R库的路径,这里是R 3.4版本和打开目录:
cd /Library/Frameworks/R.framework/Versions/3.4/Resources/lib
删除libjvm.dylib:
rm libjvm.dylib
从Java库创建libjvm.dylib的链接,这里是jdk1.8.0_151版本:
ln -s /Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/Home/jre/lib/server/libjvm.dylib libjvm.dylib
现在转到R或RStudio并尝试:
library("rJava")
答案 1 :(得分:4)
我为java 9做了同样的事情,它工作得很好(macOS High Sierra),谢谢:
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
答案 2 :(得分:3)
我也遇到了很多麻烦,最终发现以下SO线程最相关:rJava load error in RStudio/R after "upgrading" to OSX Yosemite
基本上,从没有安装rJava开始,从终端开始:
-f
标记将覆盖现有链接,避免在"方法2"中遇到错误。 $ sudo ln -f -s $(/usr/libexec/java_home)/jre/lib/server/libjvm.dylib /usr/local/lib
然后在RStudio:
options('java.home')
不是NULL
,并在必要时进行设置: options("java.home"="/Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home/jre")
JAVA_HOME
和LD_LIBRARY_PATH
个环境变量,如果没有,则设置: Sys.setenv(JAVA_HOME='/Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home')
Sys.setenv(LD_LIBRARY_PATH='$JAVA_HOME/jre/lib/server')
在此之后,我能够使用
在RStudio中安装和加载rJava包install.packages('rJava')
library(rJava)
答案 3 :(得分:1)
我已尝试过本网站上的大部分建议,但都没有效果。对我来说,唯一可行的解决方案是在这个Github site网站上。
希望这可以解决您的问题。
答案 4 :(得分:-1)