在macOS 10.14上rJava安装失败

时间:2018-11-27 14:59:58

标签: r rjava macos-mojave

升级到MacOS Mojave(10.14.1)后,对于安装了Java版本“ 1.8.0_102”的R版本3.5.1,我不再能够安装rJava

我尝试了previous solution for MacOS 10.11,但仍然无法正常工作,出现了此错误:

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

4 个答案:

答案 0 :(得分:4)

发布我发现的解决方案以防其他人遇到麻烦-我不太了解为什么这样做或是否正确,因此寻找更好的替代方案!

issue引至this Apple forum的地方

  

对于在/ usr / include下的基本系统中查找macOS标头的旧版软件,请安装位于/Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14的软件包文件。 pkg

为此,请打开终端并运行以下命令

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

然后按照提示安装软件包。

然后,在终端中,按照上一个答案配置rJava并安装

sudo R CMD javareconf

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

,它应该安装没有问题。

答案 1 :(得分:1)

我遇到了确切的问题。我是通过以下方式解决的:

  1. 安装latest version of Java(dmg文件)

  2. 在Studio中安装rJava:install.packages(“ rJava”)

  3. 在终端中:sudo mv jdk-12.0.1.jdk jdk-11.0.1.jdk

否则,Rstudio中将出现以下错误:

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-11.0.1.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
  1. 在Rstudio中:library(rJava)

  2. rJava应该已经正确加载。

答案 2 :(得分:1)

当我尝试在macO(Mojave版本)中安装“ rJava”时遇到了同样的问题。

以下我执行的解决问题的步骤。

R版本:3.6.1

问题:配置:错误:缺少一个或多个Java工具。 *** JDK不完整!请确保您具有完整的JDK。 JRE还不够。

解决方案:在终端中执行以下命令

  1. $ /usr/libexec/java_home -V
    Matching Java Virtual Machines (1):
        1.8.0_162, x86_64:  "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_221.jdk(your Java version)/Contents/Home
  1. $ export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_221.jdk/Contents/Home

  2. $ export PATH=$JAVA_HOME/bin:$PATH

  3. $ R CMD javareconf

  4. $ R --quiet -e 'install.packages("rJava", type="source", repos="http://cran.us.r-project.org")'

答案 3 :(得分:1)

在安装JDK 11.04 LTS之后,我陷入了Mojave上R Studio中的相同错误

R期待Library not loaded: /Library/Java/JavaVirtualMachines/jdk-11.0.1.jdk

尽管运行sudo R CMD javareconf,错误仍然存​​在

因此,我在finder中浏览到/Library/Java/JavaVirtualMachines/并将文件夹"jdk-11.0.4.jdk"重命名为"jdk-11.0.1.jdk"

重新启动R,library(rJava)library(xlsx)现在都可以工作。

希望这对某人有帮助