我只想尝试使用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)
谢谢你的任何指示.
由于您使用的是自定义类,因此需要告诉rJava在哪里可以找到这些自定义类.一种方法是在调用jinit时指定类的位置.
library(rJava)
# Assuming HelloWorld is in the current working directory
.jinit(".")
.jnew("HelloWorld")
Run Code Online (Sandbox Code Playgroud)
我建议您阅读.jinit的帮助页面