2

我想在已经安装了 R 的 Linux 机器上从 Java 中调用一些 R 代码,因此需要 Java/R 接口 (JRI)。

但是,我不知道该怎么做。

JRI 主页说该软件包捆绑在rJava。因此,我从rJava 文件部分下载了 rJava-0.9.3.tar.gz并解压缩,在src/java文件夹中获取(除其他外)大量 Java 源文件(及其相应的类),外加 2 inst/jri文件夹中的 JAR(JRIEngine.jar 和 REngine.jar) 。

但是,除了上述2 个 JAR 之外, JRI Files 部分还包括 JRI.jar,并且所有这三个库都比inst/jri中的 2 个更新。

此外,这 3 个 JAR 中没有一个包含 src/java 中的类的二进制文件,这似乎是从 Java 中调用 R 所必需的。

在java/src文件夹中运行“make all”似乎只是执行了一些测试并且没有生成 JAR。

我希望所有必要的类都捆绑在 JAR 文件中,以便可以轻松地将它们添加到类路径和 IDE 项目中(例如,在 Eclipse 中)。

我怎样才能达到那个地步?

4

1 回答 1

4

在 R 中使用install.packages("rJava")- 这将安装包含 JRI 的 rJava。使用 . 您将获得相同的效果R CMD INSTALL rJava_0.9-3.tar.gz。两者都是记录在案的安装 R 包的方法。确保您之前已经安装了 JDK,并为 R 配置了 Java 支持。安装后,您可以向 R 询问 JRI 的位置system.file("jri",package="rJava")

请注意,为了使用 JRI,您需要正确设置环境(通常使用R CMD)并设置java.library.path为包含 JRI 位置。您可能需要扫描 stats-rosuda-devel 邮件列表,这是询问 rJava/JRI 的规范场所。

于 2012-03-01T00:09:59.537 回答