我已经安装了R 3.0.1和Eclipse Kepler。 (我已经安装了StatE来运行R-script和Eclipse R-console没有问题。)但是,我似乎无法运行java程序。我正在发布我的问题,看看是否有其他人遇到过他们,或者可以帮助我理解我做错了什么。安装R,rJava(通过R)和eclipse后,我从studytrials.com运行了RJavaEclipse插件。然后我将路径配置到适当的库或.dll。
当我尝试运行rJava JRI附带的rtest.java文件时,出现以下错误:
找不到JRI原生库! 请确保JRI本机库位于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中的运行选项卡运行时 - &gt;运行配置 - &gt; R - &gt; rtest,我收到一个弹出式警告:
R_HOME must be set or R properly installed (\Software\R-core\InstallPath registry entry must exist).
所以,按照SO上这么多的建议,我试着在警告信息中找到答案。
我发现Eclipse(和Windows)中的路径信息指向库和R run配置中的正确位置: (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环境路径匹配。
所以,我很茫然。如果有人对我的问题有任何建议,我将不胜感激。如果您需要任何其他信息,请发表评论。
答案 0 :(得分:2)
我在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
,必须将本机库位置项设置为包含JRI jar的文件夹(在我的情况下为/usr/local/lib/R/site-library/rJava/jri
) :
只需选择该项目,然后点击编辑... 即可更改其值。
答案 1 :(得分:0)
你可以尝试在系统环境变量路径上添加jri.dll(在你的rJava / jri / x64包中),如下所示:(对不起,我不能把图片放在上面) 以这种方式,然后重新启动IDE并运行测试。