rJava 没有选择正确的 Java 版本

标签 r rjava

我一直在努力解决这个问题。当我从 R 安装 rJava 时,它需要 Java 1.6 而不是 1.8。我使用的是 MAC OS 10.8.5,这些是我已经完成的步骤。

我已经安装了 R。
我的机器上有 Java 1.6 和 1.8。
我已经使用以下命令从终端重新配置了 R:sudo R CMD javareconf -n .
这是输出的样子:

Java 解释器:/usr/bin/java
Java 版本:1.8.0_25
Java 主路径:/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home/jre
Java编译器:/usr/bin/javac
Java 头文件:/usr/bin/javah
Java归档工具:/usr/bin/jar
OS X 上的非系统 Java

尝试编译和链接 JNI 程序

检测到 JNI cpp 标志:-I$(JAVA_HOME)/../include -I$(JAVA_HOME)/../include/darwin
检测到 JNI 链接器标志:-L$(JAVA_HOME)/lib/server -ljvm
gcc -arch x86_64 -std=gnu99 -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home/jre/../include -I/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home/jre/../include/darwin -I/usr/local/include -fPIC -mtune=core2 -g -O2 -c conftest. c -o conftest.o
gcc -arch x86_64 -std=gnu99 -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup -single_module -multiply_defined 抑制 -L/Library/Frameworks/R.framework/Resources/lib -L/usr/local/lib -L/usr/本地/lib -o conftest.so conftest.o -L/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home/jre/lib/server -ljvm -F/Library/Frameworks/R.framework/。 . -framework R -Wl,-framework -Wl,CoreFoundation

JAVA_HOME :/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home/jre
Java 库路径:$(JAVA_HOME)/lib/server
JNI cpp 标志:-I$(JAVA_HOME)/../include -I$(JAVA_HOME)/../include/darwin
JNI 链接器标志:-L$(JAVA_HOME)/lib/server -ljvm

然后我继续使用 R 并像这样安装 rJava 包作为源:install.packages("rJava", type="source")然后我到达 DONE(rJava)
然后当我使用以下方法检查版本时:

图书馆(rJava)
.jinit()
.jcall("java/lang/System", "S", "getProperty", "java.runtime.version")

我仍然得到1.6.0_25-b17而不是 1.8
如果您知道此问题的解决方案,请告诉我。

最佳答案

最新版本的 rJava 已修复此问题。
我安装了来自 site 的最新版本使用命令

install.packages("rJava",,"http://rforge.net/",type="source")



现在调用 jvm 的输出如下:
> library(rJava)
> .jinit()
> .jcall("java/lang/System", "S", "getProperty", "java.runtime.version")
[1] "1.7.0_75-b13"

注意:我安装了 java 1.7 和 1.6,而不是 java 1.8

关于rJava 没有选择正确的 Java 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28133360/

相关文章:

r - 使用 rmarkdown 布局,左侧为大纲/目录,右侧为内容

r - 为什么 'curve' 与 R 中的 'lines' 和 'points' 如此不同?

java - R: 无法安装 rJava;什么是 r-api-3.4?

data.table 中的递归赋值

r 测试列中的条件,如果不满足,则移至下一个数字并再次测试

r - Lubridate week() 以查找多年期的连续周数

r - xlsx 包中的 saveWorkbook 不允许我保存我创建的工作表

java - 使用 eclipse 中的 rJava/JRI 包时,一些命令在 rtest.java 中失败

rJava 库不工作。无法找到 jvm.dll

r - 如何将 rJava 加载到 RStudio 中?