eclipse - 使用 Eclipse 运行时出现 rJava 错误

标签 eclipse r rjava

我已经安装了 R 3.0.1 和 Eclipse Kepler。 (我已经安装了 StatE 来通过 R-script 和 Eclipse R-console 运行,没有问题。)但是,我似乎无法运行 Java 程序。我正在发布我的问题,看看是否有其他人遇到过这些问题,或者可以帮助我了解我做错了什么。安装 R、rJava(通过 R)和 eclipse 后,我从 studytrials.com 运行了 RJavaEclipse 插件。然后我配置了相应库或 .dll 的路径。

enter image description here

当我尝试运行 rJava JRI 附带的 rtest.java 文件时,出现以下错误:

找不到 JRI 本地库!
请确保 JRI native 库位于 java.library.path 中列出的目录中。

java.lang.UnsatisfiedLinkError: no jri in java.library.path
    at java.lang.ClassLoader.loadLibrary(Unknown Source)
    at java.lang.Runtime.loadLibrary0(Unknown Source)
    at java.lang.System.loadLibrary(Unknown Source)
    at org.rosuda.JRI.Rengine.<clinit>(Rengine.java:19)
    at rtest.main(rtest.java:61)

当我尝试通过 Eclipse -> 运行配置 -> R -> rtest 中的运行选项卡运行时,我收到一个弹出警告,内容为:
R_HOME must be set or R properly installed (\Software\R-core\InstallPath registry entry     must exist).

因此,按照 SO 上这么多人给出的建议,我试图在警告消息中找到答案。

我发现 Eclipse(和 Windows)中的路径信息指向库和 R 运行配置中的正确位置:enter image description here
enter image description here
(C:\Users\csnyder\Documents\R\win-library\3.0\rJava\jri\x64;C:\Program Files\Java\jre7\bin\server;C:\Program Files\R\R-3.0. 1\bin\x64)

这些路径也匹配 windows 环境路径。

enter image description here

所以,我不知所措。如果有人对我的问题有任何建议,我将不胜感激。如果您需要任何其他信息,请发表评论。

最佳答案

我在 Linux 上遇到了完全相同的问题。本质上,此设置不是更新 java.library.path正确并且与 JRI jar 的链接失败。我首先打印控制台的路径:
System.out.println(System.getProperty("java.library.path"));
得到了这个:
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
保证Eclipse更新java.library.path在运行时正确, native 库位置项必须设置为包含 JRI jar 的文件夹(在我的情况下为 /usr/local/lib/R/site-library/rJava/jri):

enter image description here

只需选择该项目并单击“编辑...”即可更改其值。

关于eclipse - 使用 Eclipse 运行时出现 rJava 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18515624/

相关文章:

java - 在 Mac 上的 Java 应用程序中使用 R

在 debian 上的 R 中安装 rJava

eclipse - 使用EGit将eclipse项目推送到GitHub

r - 了解剪切输出

r - 如何使用 'sweep'函数

R data.table 查找当前行与上一行之间的滞后

r - 使用 xlsx 包将数据从 R 插入到 Excel 时出现问题

android - 将黑莓性质添加到android项目会阻止它编译

java - 线程 : Busy Waiting - Empty While-Loop

java - 在spring mvc中保存文件时的tomcat路径