我无法在Mac OS 10.11.5上运行R xlsx软件包 - El Capitan

时间:2016-06-19 20:12:28

标签: java r macos

我正在尝试在R上运行xlsx包但返回此错误:

> library(xlsx)
JavaVM: requested Java version ((null)) not available. Using Java at "" instead.
JavaVM: Failed to load JVM: /bundle/Libraries/libserver.dylib
JavaVM FATAL: Failed to load the jvm library.
Error : .onLoad failed in loadNamespace() for 'xlsx', details:
 call: .jinit()
 error: JNI_GetCreatedJavaVMs returned -1

Error: package or namespace load failed for ‘xlsx’

我在Stackoverflow Cannot load R xlsx package on Mac OS 10.11上找到了此链接,但它对我不起作用。

解决方案是在Mac终端上运行sudo R CMD javareconf,在install.packages("rJava",type='source')上运行R.但是当我运行sudo R CMD javareconf时,我的Mac会出现此错误:sudo: R: command not found

有谁知道如何解决这个问题?

操作系统版本:

$ sw_vers
ProductName:    Mac OS X
ProductVersion: 10.11.5
BuildVersion:   15F34

Java版本:

$ java -version
java version "1.8.0_60"
Java(TM) SE Runtime Environment (build 1.8.0_60-b27)
Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode)

R版本:

> version
           _                           
platform       x86_64-apple-darwin13.4.0   
arch           x86_64                      
os             darwin13.4.0                
system         x86_64, darwin13.4.0        
status                                     
major          3                           
minor          2.3                         
year           2015                        
month          12                          
day            10                          
svn rev        69752                       
language       R                           
version.string R version 3.2.3 (2015-12-10)
nickname       Wooden Christmas-Tree

1 个答案:

答案 0 :(得分:0)

来自终端会话的错误消息实际上表明你的bash PATH没有R可执行文件的目录(或它的符号链接。)但我也想知道增加你的PATH值是否会成功。

OSX的El Capitan版本更改了安全策略并移动了用户安装软件的位置。通过在终端提示符处发出此命令然后提供密码后,我在使用javareconf失败后获得了成功:

sudo ln -s $(/usr/libexec/java_home)/jre/lib/server/libjvm.dylib /usr/local/lib