java new REngine启动并立即停止
我想使用JRI从Java调用R
我在eclipse下运行这个主类:
Rengine c = new Rengine(new String[] { "--vanilla" }, false, null);
首先,我在加载jri时遇到了一个问题。dll,我已经解决了设置这个的问题
-Djava.library.path=D:\Users\pmancaux\Desktop\Dev\R\GNU_R\R-3.0.2\library\rJava\jri\
我在eclipse的环境执行中设置:
PATH D:\Users\pmancaux\Desktop\Dev\R\GNU_R\R-3.0.2\library\rJava\jri\;D:\Users\pmancaux\Desktop\Dev\R\GNU_R\R-3.0.2\bin\;D:\Users\pmancaux\Desktop\Dev\R\GNU_R\R-3.0.2\bin\i386
R_DOC_DIR D:\Users\pmancaux\Desktop\Dev\R\GNU_R\R-3.0.2\doc
R_HOME D:\Users\pmancaux\Desktop\Dev\R\GNU_R\R-3.0.2\bin
R_INCLUDE_DIR D:\Users\pmancaux\Desktop\Dev\R\GNU_R\R-3.0.2\include
R_SHARE_DIR D:\Users\pmancaux\Desktop\Dev\R\GNU_R\R-3.0.2\share
但是当我在做“新的重组”的时候。。。它是立即开始和停止的 请参见调试模式下的跟踪:
<disconnected>fr.edf.CallRJRI at localhost:50728
<terminated, exit value: 2>D:\outils\java\jdk1.6.0_37\bin\javaw.exe (28 mars 2014 10:41:13)
我做错了什么
一些信息:
我在RGui中有磁带库(“rJava”)。exe
Tapez 'q()' pour quitter R.
> library("rJava")
>
它似乎没有任何问题,在java中我有JRI。jar和JRIENgine。jar由:1.7.0_45(Oracle公司)在清单文件中创建。在我的主要方法中
Rengine.DEBUG = 5;
System.out.println("Starting Rengine..");
System.out.println("R_HOME =" + System.getenv("R_HOME"));
System.out.println("java.library.path =" + System.getProperty("java.library.path"));
Rengine re = new Rengine(new String[] { "--vanilla" }, false, null);
if (!re.waitForR()) {
System.out.println("Cannot load R");
return;
}
但节目停在了新雷诺线。。。 非常感谢你的帮助
# 1 楼答案
我相信你没有激活R并在其中输入:
library("rJava")
,先试试这个,如果不行,请附上您的java代码,我会尝试找到其他解决方案