正在从java运行R脚本-Rconnection eval异常

正在从java运行R脚本-Rconnection eval异常,java,r,rserve,Java,R,Rserve,我怎样才能解决这个问题?我试图清空缓存,重新安装R和Rscript connection = new RConnection(); String path = "source('" + rScript.getFile().getAbsolutePath() + "')"; connection.eval(path); //此行错误org.rosuda.REngine.Rserve.RserveException:eval 失败 在源文件中,我有以下代码 functionName <-

我怎样才能解决这个问题?我试图清空缓存,重新安装R和Rscript

connection = new RConnection();

String path = "source('" + rScript.getFile().getAbsolutePath() + "')";

connection.eval(path);
//此行错误org.rosuda.REngine.Rserve.RserveException:eval 失败

在源文件中,我有以下代码

functionName <- function(param1, param2, ...,  paramN){
  #some code here
}

functionName您还存在此问题吗

我也有同样的问题,那就是

错误:尚不支持长向量:qap_encode.c:36致命错误:无法初始化JIT

我目前正在使用macbook(HighSierra)和R版本的3.5.0和java 1.8.0.151

我解决这个问题的方法是了解您的计算机上安装了什么版本的Rserve。要检查Rserve的版本,请转到Rstudio并键入:

packageVersion("Rserve")
返回值将显示“Rserve”的版本

如果返回值是1.7.3,那么我认为这就是错误开始的地方

如果Rserve的版本为1.7.3,请尝试升级您的Rserve版本

install.packages("Rserve", "Rserve_1.8-6.tgz", "http://www.rforge.net/")
本说明也在“Rforge”网站上发布: . 当你点击这个链接并向下滚动到“存储库内容”时,它会用小字体写着“请用废话废话”。这就是“install.packages(“Rserve,…)”的来源

我知道只有少数人(至少在网络世界上)曾经或曾经遇到过这个问题,我花了2天时间来解决这个问题

希望这对你有帮助


ps.packageVersion()可以根据您使用的操作系统而有所不同。

关键是,发生错误的原因是Rserve的版本不同。