RWeka installation error: "Need at least Java version 1.7/7.0", but I have 1.8

RWeka installation error: "Need at least Java version 1.7/7.0", but I have 1.8

我正在尝试在 R 3.3.0 中安装 RWeka 包:

* installing *source* package ‘RWeka’ ...
** package ‘RWeka’ successfully unpacked and MD5 sums checked
Need at least Java version 1.7/7.0.
ERROR: configuration failed for package ‘RWeka’

不过,我有Java 1.8,所以应该没问题。奇怪的是,我能够安装 RWekajars,它应该具有类似的 Java 依赖关系。

在命令行确认Java:

$ java -version
openjdk version "1.8.0_121"

然后在 R 中:

> library(rJava)
> .jinit()
> .jcall("java/lang/System", "S", "getProperty", "java.runtime.version") 
[1] "1.8.0_121-b13"

为什么RWeka认为我不符合Java要求?

我查看了 $LD_LIBRARY_PATH/R/etc/Makeconf 并且 JAVA_HOME 设置为 1.6。因此,即使加载了 1.8,R 也认为 Java 是 1.6。

这可以通过 运行 解决:

R CMD javareconf

这需要 root 权限。