java - 没有这样的方法错误: <init> when using rJava to create a new object

标签 java r exception rjava

最近在使用rJava的时候遇到了一个问题。 首先,我创建一个公共(public)类 DirectedEdge:

public class DirectedEdge {
    public int v;
    public int w;
    public double weight;
    public DirectedEdge(){}
    public DirectedEdge(int v, int w, double weight) {
        this.v = v;
        this.w = w;
        this.weight = weight;
    }
}

然后我在 RStudio 上运行以下代码:

.jinit();
.jaddclassPath('XXXXXX');
.jnew('DirectedEdge');
.jnew('DirectedEdge',1,2,0.1);

我已经将类路径设置为我的 .class 文件所在的位置,但第三行确实运行了,第四行失败了。 RStudio 给了我一个异常(exception):

Error in .jnew("DirectedEdge", 1, 2, 0.1) : java.lang.NoSuchMethodError: <init>

我还尝试了rJava文档中的示例:

.jnew('java/lang/String',"Hello World!")

效果很好。所以有什么问题?非常感谢。

最佳答案

数字的默认类型是 double,因此请使用 .jnew("DirectedEdge", as.integer(1), as.integer(2), 0.1) 代替

关于java - 没有这样的方法错误: <init> when using rJava to create a new object,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47301037/

相关文章:

java - N个元素的一维数组是否需要与2D[m][n]相同的内存量,m*n=N

java - Axis2 错误 - java.lang.NoClassDefFoundError : org/apache/ws/commons/schema/XmlSchema

r - 通过查找更改列名

r - 如何将 sf 空间点列表转换为可路由图

.net - 使自定义 .NET 异常可序列化的正确方法是什么?

java - 在方法之外抛出异常 - Java

java - 当请求数据正确而响应数据不正确时,哪种http状态码适合

java - 如何抑制所有初始化错误

r:readr:write_csv 如何压缩文件?

C#:我能否从 CLR 的未处理异常中获取详细信息?