gpt4 book ai didi

java - JRI 返回代码 10

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:43:22 26 4
gpt4 key购买 nike

我是 R 的新手,正试图从 java 调用一个简单的 rJava 测试程序。我已经完成了必要的路径设置以及何时我正在尝试创建代码失败的 Rengine 实例。问题似乎出在 C [R.dll+0x26036] 上。但是,我对此很陌生,无法弄清楚这个问题。欢迎任何帮助。

我的代码:

import org.rosuda.JRI.REXP;
import org.rosuda.JRI.Rengine;
public class First_R {
public static void main (String args []) {

System.out.println("Start");
Rengine.DEBUG = 5;

System.out.println("Starting Rengine..");
System.out.println("R_HOME =" + System.getenv("R_HOME"));
final Rengine re = new Rengine ();
// 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();
}

输出:

开始启动 Rengine..R_HOME =D:\Program Files\R\R-3.2.0\bin\

Java 运行时环境检测到 fatal error :

EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x000000006c726036, pid=4588, tid=1872

JRE 版本:Java(TM) SE Runtime Environment (8.0_45-b14) (build 1.8.0_45-b14) Java VM:Java HotSpot(TM) 64 位服务器 VM(25.45-b02 混合模式 windows-amd64 压缩 oops) 有问题的框架: C [R.dll+0x26036]

无法写入核心转储。 Windows 客户端版本默认不启用小型转储

包含更多信息的错误报告文件另存为:

最佳答案

在您的环境设置中,请将 R_HOME 更改为 D:\Program Files\R\R-3.2.0 而不是 R_HOME =D:\Program Files\R\R-3.2 .0\bin\,请让我知道这是否有效:),注意你的代码对我有用(也使用了尼古拉的建议)

package rundavid;

import org.rosuda.JRI.REXP;
import org.rosuda.JRI.Rengine;



public class RunDavid {


public static void main (String args []) {



System.out.println("R_HOME =" + System.getenv("R_HOME"));


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();
}}

输出:

run:
R_HOME =C:\Program Files\R\R-2.15.3
7.5
BUILD SUCCESSFUL (total time: 0 seconds)

还需要设置D:\Program Files\R\R-3.2.0\bin\x64;D:\Misc\RLib\rJava\jri\x64这需要在 vm 选项中设置,而不是作为环境变量。这是它在 Netbeans 中的完成方式(我正在使用的):

  1. 右键单击项目,然后单击属性
  2. 然后选择run
  3. 按以下方式插入 VM 选项: How to set VM options in Net beans

关于java - JRI 返回代码 10,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30571436/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com