首页 > 解决方案 > 在 conda 环境中为 rJava 配置 java

问题描述

在 OSX 10.12.6 上,我创建了一个 conda 环境,包括 R、r-rjava 和 java-jdk。具体来说which Rwhich java在 env 激活时按预期指向 env 内部。

然而,

> library(rJava)
> .jinit()

JavaVM:请求的 Java 版本 ((null)) 不可用。在 "" 处使用 Java。JavaVM:无法加载 JVM:/bundle/Libraries/libserver.dylib JavaVM 致命:无法加载 jvm 库。.jinit() 中的错误:JNI_GetCreatedJavaVMs 返回 -1

我看到了一百万个相关的帖子,但没有一个完全符合这个角度。我注意到的第一件事是system("echo $JAVA_HOME")返回系统 java home 而不是 env java home。

所以我试图用R CMD javareconf. 结果是在我的内部我[env]/lib/R/etc可以看到两个文件被修改(基于时间戳)。大概相关的是 Makeconf,其中包括一个JAVA_HOME = [env]/jre.

但这对上面的问题没有任何影响,system("echo $JAVA_HOME")仍然返回系统java home。有任何想法吗?

标签: rcondarjava

解决方案


推荐阅读