Java Rcaller简单代码-加载Runiversal时出错

Java Rcaller简单代码-加载Runiversal时出错,java,r,rcaller,Java,R,Rcaller,我有以下使用的Java代码 本质上,我正在尝试运行安装R包的Java代码(因为稍后我将在需要此包的Java中运行R代码) 当我运行这段代码时,我得到以下Java输出 Error:Loading required package: Runiversal 但是,我的Mac上确实有Runiversal软件包。你知道这意味着什么吗?为什么我实际上没有看到install.packages方法的R输出,这通常是非常详细的 更新:我应该注意,即使是像以下这样的简单代码也会导致相同的错误: code.add

我有以下使用的Java代码

本质上,我正在尝试运行安装R包的Java代码(因为稍后我将在需要此包的Java中运行R代码)

当我运行这段代码时,我得到以下Java输出

Error:Loading required package: Runiversal
但是,我的Mac上确实有
Runiversal
软件包。你知道这意味着什么吗?为什么我实际上没有看到
install.packages
方法的
R
输出,这通常是非常详细的


更新:我应该注意,即使是像以下这样的简单代码也会导致相同的错误:

code.addRCode("x = c(1,2,3)");
code.addRCode("y = c(2,3,5");
code.addRCode("x+y");
caller.redirectROutputToConsole();
caller.runOnly();

更新:我还应该提到以下内容非常有用:

StringBuffer allCode = readFile("temp.R");
code.setCode(allCode);

double[] xvector = new double[]{1,3,5,3,2,4,5,6,7,8,9,21,22,25,27,25,34,39,31};
double[] yvector = new double[]{6,7,5,6,5,6,6,7,6,8,9,21,20,19,23,24,29,38,30};
code.addDoubleArray("X",xvector);
code.addDoubleArray("Y",yvector);

code.addRCode("fun(X,Y)");
温度R:

fun = function(x,y) {
    return(lm(y~x))
}
Java输出:

Output:
Output:Call:
Output:lm(formula = y ~ x)
Output:
Output:Coefficients:
Output:(Intercept)            x  
Output:      2.445        0.825  
Output:

R从库中加载包。如果在Java下启动的R进程没有搜索安装Runiversal包的库,则可能会导致出现错误消息


那么:安装Runiversal包的目录路径(即库)是什么?可能与此相关的是安装R包的用户,以及运行Java代码的用户

RCaller库的2.2版本不需要R包运行版本。包中实现了R到XML转换器的紧凑版本。试试看

Runiversal与我所有的软件包都在同一个位置/Library/Frameworks/R.framework/Resources/Library/。我是安装包的用户(直接通过R),我是运行Java代码的用户。有什么方法可以检查Java下启动的R进程是否正在搜索此位置?R函数.libPaths()将返回库目录的字符向量。在上述两种情况下,您是否使用Rscript作为SetrScript可执行文件?Rscript有一个名为default packages的参数,那么您可能需要通过该参数加载Runiversal?这里只是一个猜测,请从命令行尝试以下操作:Rscript--default packages='Runiversal'-e'search()'与Rscript-e'search()
Output:
Output:Call:
Output:lm(formula = y ~ x)
Output:
Output:Coefficients:
Output:(Intercept)            x  
Output:      2.445        0.825  
Output: