rJava类未找到异常

tca*_*h21 1 r rjava

我只想尝试使用rJava从R中访问自定义java类的简单示例.

HelloWorld.java

class HelloWorld {
        public static void main(String[] args){
                System.out.println("Hello World!");
        }
}
Run Code Online (Sandbox Code Playgroud)

将.java编译为.class如下:

javac HelloWorld.java
Run Code Online (Sandbox Code Playgroud)

R代码(从HelloWorld.java和HelloWorld.class的相同目录运行.

library(rJava)
> .jinit()
[1] 0
> .jnew("HelloWorld")
Error in .jnew("HelloWorld") : java.lang.ClassNotFoundException
Run Code Online (Sandbox Code Playgroud)

谢谢你的任何指示.

Das*_*son 6

由于您使用的是自定义类,因此需要告诉rJava在哪里可以找到这些自定义类.一种方法是在调用jinit时指定类的位置.

library(rJava)
# Assuming HelloWorld is in the current working directory
.jinit(".")
.jnew("HelloWorld")
Run Code Online (Sandbox Code Playgroud)

我建议您阅读.jinit的帮助页面