【发布时间】:2013-10-06 17:01:10
【问题描述】:
我正在尝试设置 Java/R 接口(捆绑在 R“rJava”包中),但我遇到了一些麻烦(尽管在这里和其他论坛上尝试了很多建议)。
我正在运行 Windows 7、jdk1.7.0_05、Eclipse、R 2.15.2。这些都是 64 位安装。
我尝试运行示例的步骤如下:
- 在 R GUI 中安装 rJava:install.packages('rJava') - 安装到 C:\Users\USERNAME\Documents\R\win-library\2.15\rJava\
- 设置环境变量:R_HOME = "C:\Program Files\R\R-2.15.2",添加到 PATH = "C:\Program Files\Java\jdk1.7.0_05\bin";"C:\ Program Files\Java\jdk1.7.0_05\jre\bin\server";"C:\Program Files\R\R-2.15.2\bin\x64";"C:\Users\USERNAME\Documents\R\win -库\2.15\rJava\jri\x64"
- 在 Eclipse 中设置示例项目,设置 VM 参数:-Djava.library.path="C:\Users\USERNAME\Documents\R\win-library\2.15\rJava\jri\x64"
- 重启 R 并使用命令加载 rJava:libraries('rJava')
- 运行示例程序,得到如下异常:
找不到 JRI 原生库! 请确保 JRI 本机库位于 java.library.path 中列出的目录中。
java.lang.UnsatisfiedLinkError: C:\Users\USERNAME\Documents\R\win-library\2.15\rJava\jri\x64\jri.dll: Can't find dependent libraries
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary1(Unknown Source)
at java.lang.ClassLoader.loadLibrary0(Unknown Source)
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 test.JRITest.main(JRITest.java:64)
我已验证 "java.library.path" 已按预期设置,因为: System.out.println("JLP = " + System.getProperty("java.library.path"));输出正确的路径。
我认为 rJava 可能尚未完全安装(已尝试重新安装),但我不确定如何检查。 “...\rJava\jri”或其任何子目录中的唯一 JAR 是“JRI.jar”,示例目录似乎不完整。
有人对这里可能出现的问题提出建议吗?
JRI 网站 (http://www.rforge.net/JRI/index.html) 似乎今天已关闭,不确定是否有人知道其他下载源(直接从 CRAN 下载除外)。
谢谢。
【问题讨论】:
-
你解决过这个问题吗?