使用rJava在R中调用java方法

我使用rJava从R调用java代码,尝试从SPMF工具调用算法。 我试图在这个问题中使用包装器函数,但这不适用于SPMF代码。

这是我的R代码:

library(rJava) .jinit() .jaddClassPath ( "C:/mydrive/eclipse-workspace/myfile/src") print(.jclassPath()) obj <- .jnew("AlgoFPGrowth_Strings") s <- .jcall(obj, returnSig= "V", method="runAlgorithm", "input.csv","output.txt") , 0.4 ) 

它给了我错误,没有找到签名(D)V的方法runAlgorithm

这是java中的主要内容:

  public static void main(String[] args) throws Exception { AlgoFPGrowth_Strings fpwindow=new AlgoFPGrowth_Strings(); String input="input.csv"; String output="output.txt"; double minsupp = 0.4; fpwindow.runAlgorithm( input, output, minsupp); fpwindow.printStats(); } 

我试图将returnSig值更改为S和Ljava / lang / String; 但我得到了同样的错误,找不到方法

当我使用简单的方法将代码应用于不同的java代码时,它是否有任何想法如何更改我的代码?

尝试以下方法,

  1. 更改你的jclassPath ,你可以直接指定jar文件的完整路径名,包括jar名称,比如/home/user/mypath/myclass_name.jar

  2. 或者,您可以将jar文件解压缩到文件夹中,并在jclassPath引用该路径。

如果,以上不起作用,

  1. 尝试在您调用的同一个类中编写’runAlgorithm’方法。 我遇到了调用外部库/类的问题。