我已经尝试了这个网站中的方法:"http://codophile.com/2015/04/15/how-to-integrate-r-with-java-using-rjava/"按照说明在 eclipse 中运行,但出现错误:
"找不到JRI原生图书馆! 请确保 JRI 本机库位于 java.library.path 中列出的目录中。
后来将 jri.dll 从 rjava 库位置复制到本机 jdk bin 文件夹并再次重新运行,输出正常!!
也尝试了这种方法:
-Djava.library.path="C:Users[USER_NAME]DocumentsRwin-library3.5rJavajrix64;C:Program FilesRR-3.5.0binx64";"C:Program FilesJavajdk1.8.0_172jrebin";"C:Program FilesJavajdk1.8.0_172bin"
在日食虚拟机参数中。在将 jri 复制到本机 java 库之前不会获得输出。
但是我想要其他方法,因为将.dll文件复制到jdk文件夹并不是那么正确的方法。如果有任何其他获取输出的好方法,请回复。
尝试这个简单的检查,如果某处的目录名称中没有拼写错误。
杰里.java
import java.io.File;
public class Jri {
public static void main(String[] args) {
String[] paths = System.getProperty("java.library.path").split(";");
for (String path : paths) {
File file = new File(path + "/jri.dll");
System.out.printf("file: %s exists: %s%n", file, file.exists());
}
// when the library was found in one of the locations
// this call should not throw an exception
System.loadLibrary("jri.dll");
}
}
编译源代码
java Jri.java
使用 JVM 属性运行它
java -Djava.library.path=[put here the directories] Jri
如果在任何位置都找不到该文件,请检查拼写错误。
我想你可以试试这个。重新配置路径,增加
%R_HOME%libraryrJavajrii386;
%R_HOME%bini386 these two paths.
在使用 java 代理 R 之前,请尝试使版本统一