在Mac El Capitan上安装和加载rJava时出现问题

时间:2017-05-20 02:07:27

标签: r installation rjava

安装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

所以看起来已安装但未加载

5 个答案:

答案 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开始,从终端开始:

  1. 形成sym链接(注意,-f标记将覆盖现有链接,避免在"方法2"中遇到错误。
  2. $ sudo ln -f -s $(/usr/libexec/java_home)/jre/lib/server/libjvm.dylib /usr/local/lib

    然后在RStudio:

    1. 确保options('java.home')不是NULL,并在必要时进行设置:
    2. options("java.home"="/Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk/Contents/Home/jre")

      1. 确保设置了JAVA_HOMELD_LIBRARY_PATH个环境变量,如果没有,则设置:
      2. 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)

问题是rJava无法安装在RStudioVersion 1.0.136)中。以下内容对我有用(macOS Sierra version 10.12.6)(找到here):

第1步:从here下载并安装javaforosx.dmg

步骤2:接下来,从RStudio内部运行命令:

install.packages("rJava", type = 'source')