我想将一个双精度数组传递到R中,然后求和它的值并将其返回给Java。以下是我试图用Java做的事:在Java和R之间工作
import org.rosuda.JRI.REXP;
import org.rosuda.JRI.Rengine;
// Start R session.
Rengine re = new Rengine (new String [] {"--vanilla"}, false, null);
// Check if the session is working.
if (!re.waitForR()) {
return;
}
re.assign("x", new double[] {1.5, 2.5, 3.5});
REXP result = re.eval("(sum(x))");
System.out.println(result.asDouble());
re.end();
但是,我得到的错误: 进口org.rosuda.JRI.REXP不能得到解决 进口org.rosuda.JRI.Rengine不能得到解决 Rengine不能被解析为一个类型
这种情况即使我做进口:
import java.lang.Object.org.rosuda.JRI.REXP;
import java.lang.Object.org.rosuda.JRI.Rengine;
有什么建议?谢谢!!
我真的没有太多的经验。我甚至不确定你的“classpath”是什么意思。顺便说一下,我使用的是Mac。我之前没有使用过JRI,这是向我推荐的,我所做的只是在我的程序顶部输入了这两行。对不起,我不理解...:o( – LanneR
)您需要从头开始,然后使用[基础Java教程](http://docs.oracle.com/javase/tutorial/getStarted/)。到[这里](http://docs.oracle.com/javase/7/docs/technotes/tools/windows/classpath.html)了解如何设置用于运行你的程序的classpath。 – Perception
对于classpath,你的意思是我希望拥有这个插件的JAVA代码的.src文件的路径?我不太擅长与终端工作。如果我已经下载了RJavaPlugin ****。jar文件,是否有手动方式I可以确保Eclipse能够访问它这个插件吗?再次感谢... – LanneR