1
我正在使用Java,我需要使用附加R庫並使用該庫中的函數。我試圖在以下幾個問題如何將附加R庫加載到JRI中並從Java執行?
How I can load a R script into JRI and execute from Java?
Problem loading R own created libraries in Java/JRI code
,但我仍然得到一個NullPointerException提供的答案。任何人都可以指出錯誤。三江源
這裏是我使用的代碼:
import org.rosuda.JRI.REXP;
import org.rosuda.JRI.RVector;
import org.rosuda.JRI.Rengine;
public class RConnect {
public void processFiles(String[] spectrumData)
{
// new R-engine
Rengine re=new Rengine (new String [] {"--vanilla"}, false, null);
if (!re.waitForR())
{
System.out.println ("Unable to load R");
return;
}
else
System.out.println ("Connected to R");
REXP rexpSetFolder = re.eval("setwd('/home/user/R/x86_64-pc-linux-gnu-library/3.0')");
REXP rexpFolder = re.eval("getwd()");
System.out.println(rexpFolder.asString());
REXP rexpLoad = re.eval("library(PROcess)");
RVector f1 = (re.eval("read.files(spectrumData)").asVector());
System.out.println(f1);
re.end();
}
}
我試圖做類似的事情,它會拋出NPE。我爲它創建了一個[問題](http://stackoverflow.com/questions/38660138/rengine-eval-returns-null),請你看一下嗎? –