在macOS Mavericks 10.9.5上安装xlsx和rJava

Men*_*hor 7 java macos r rjava

在我的Mac上安装rjava是一个真正的噩梦.

我的设置:

MacOS 10.9.5
Java: 7u71 (64 bits dowloaded from Oracle site)
R: R version 3.1.1 (2014-07-10)
Run Code Online (Sandbox Code Playgroud)

首先,在命令行中我运行了

sudo R CMD javareconf
Run Code Online (Sandbox Code Playgroud)

然后,我在里面跑了R:

install.packages('rJava')
Run Code Online (Sandbox Code Playgroud)

编译结束时的错误是这样的:

JavaVM -F/opt/local/Library/Frameworks/R.framework/.. -framework R -llzma -lm -liconv -licuuc -licui18n
ld: library not found for -licuuc
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [libjri.jnilib] Error 1
make[1]: *** [src/JRI.jar] Error 2
make: *** [jri] Error 2
ERROR: compilation failed for package ‘rJava’
* removing ‘/Users/costa/Library/R/3.1/library/rJava’
Run Code Online (Sandbox Code Playgroud)

我尝试了Java 8和Mac默认的java也得到了同样的错误.

Ideias?

小智 1

我的计算机上也出现同样的错误(Mac OS 10.9.5、Java 1.8.0_11、R 3.1.1)。从 Oracle 安装最新的 Java JDK (1.8.0_25) 并没有解决问题。但是,更新 Java 后,安装 R 3.1.2 解决了我的问题。运行后install.packages("rJava"),效果如下:

> library("rJava")
> .jinit() # this starts the JVM
> s <- .jnew("java/lang/String", "Hello World!")
> .jcall(s,"I","length")
[1] 12
Run Code Online (Sandbox Code Playgroud)

请注意,更新JDK与 GUI Java 控制面板中的 Java 版本不同,可通过系统首选项进行访问。后者只是互联网浏览器插件的JRE 。