2012-06-19 3 views
1

저는 rJava를 사용하여 R 내에서 사용자 정의 Java 클래스에 액세스하는 간단한 예제를 얻으려고합니다.rJava 클래스가 없습니다. 예외

HelloWorld.java

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

컴파일 된 .java 같은을 .class합니다 :

javac HelloWorld.java 

R 코드 (HelloWorld.java 및 HelloWorld.class 같은 디렉토리에서 실행

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

어떤 조언을 주셔서 감사합니다.

+0

왜 포인터를 원하는가에 대한 도움말 페이지를 읽는 것이 좋습니다? Java는 내가 생각한 참조를 사용합니다 ... – Dason

+0

하하하, 당신이 거기에서 한 것을 봅니다. – tcash21

답변

5

사용자 정의 클래스를 사용하고 있으므로 rJava에게 이러한 사용자 정의 클래스를 찾을 위치를 알려줘야합니다. 이를 수행하는 한 가지 방법은 jinit를 호출 할 때 클래스의 위치를 ​​지정하는 것입니다.

library(rJava) 
# Assuming HelloWorld is in the current working directory 
.jinit(".") 
.jnew("HelloWorld") 

내가 .jinit

+0

고마워요! 이것은 효과가 있었다. 많은 예제 코드를 살펴 보았지만 사용자 지정 클래스에 대한 경로를 지정하지 않은 사람은 다음과 같습니다./이러한 함수를 조금 더 읽습니다. – tcash21

관련 문제