2017-09-25 7 views
2

rJava를 설치하고로드하는 데 계속 문제가 있습니다. 나는 R 3.4.1 ('싱글 캔들')을 가지고있다; Java v 9 및 mac OS 10.12.6.rJava, mac 10.12.6 및 Java v 9 (R 버전 3.4.1)의 문제

수출 JAVA_HOME = $ (은/usr/libexec 디렉토리/JAVA_HOME -v 9)

수출 :

나는 나의 ~/.profile에 포함을 편집 할 터미널을 사용하여 포함 here 나열된 모든 단계를 수행 PATH = $ JAVA_HOME/bin : $ PATH

그리고 R을 '올바른'Java에 연결하기 위해 다른 변경을가하십시오. 'JNI_CreateJavaVM는' [-Wdeprecated-선언] JNI_CreateJavaVM는 (0, 0되지 않습니다 :

경고 : 나는

sudo는 R CMD 그러나

를 javareconf 실행하면, 나는라는 오류 메시지가 0); ^ /System/Library/Frameworks/JavaVM.framework/Headers/jni.h:1937:1 : 참고 : 'JNI_CreateJavaVM는이'여기에 명시 적으로 JNI_CreateJavaVM는 (의 JavaVM 사용되지 않는 것으로 표시되었습니다 ** PVM, 무효 ** penv 무효 * args); ^ 경고가 1 생성되었습니다.

그리고 실행할 때

R CMD INSTALL rJava_0.9-8.tar.gz

I라는 오류 얻을 때까지 모든 것이 순조롭게 진행 :

는 JNI 프로그램을 컴파일 할 수 있는지 여부를 확인을 ... configure : error : 간단한 JNI 프로그램을 컴파일 할 수 없습니다. 자세한 내용은 config.log를 참조하십시오.

Java Development Kit을 설치하고 R에 올바르게 등록했는지 확인하십시오. 의심스러운 경우 "R CMD javareconf"를 루트로 다시 실행하십시오.

ERROR : 구성은 친절하게 그 '는/usr/libexec 디렉토리/JAVA_HOME -v 9'JDK에 "포인트"가 아니라 JRE 확인하기 위해 제안 위에 링크 된 사이트에서 'rJava'

마이클 패키지 실패했습니다. 어떻게해야할지 모르겠습니다. 내가 좋아하는 뭔가를하려고 할 때 또한 :

가 반향을 $ JAVA_HOME

내가 얻을 :

/Library/Java/JavaVirtualMachines/jdk-9.jdk/Contents/Home

내가 알고 어떻게 이 JDK 또는 JRE?

내 오류 메시지로 인해 JNI 문제가 있다고 생각하지만이 문제를 해결하기 위해 시작하는 방법을 모르겠습니다. Michal의 튜토리얼을 사용하여 잘못되었을 수도있는 사항에 대한 통찰력은 대단히 감사하겠습니다!

P. , .onLoad는 'rJava'에 대한 loadNamespace() 실패 세부 정보 :

오류 : 패키지 또는 네임 스페이스로드 'rJava'실패 내 원래의 문제는 라이브러리 (rJava를)로드하려고이 오류가 발생, R에 있었다 : 전화 : dyn.부하 (파일,하는 DLLPath =하는 DLLPath ...) 오류 : 공유 객체를로드 할 수 없습니다 '/Library/Frameworks/R.framework/Versions/3.4/Resources/library/rJava/libs/rJava.so' dlopen을 (/Library/Frameworks/R.framework/Versions/3.4/Resources/library/rJava/libs/rJava.so는, 6) : 도서관로드되지 : RPATH가/libjvm.dylib 에서 참조 @ : /Library/Frameworks/R.framework를 /Versions/3.4/Resources/library/rJava/libs/rJava.so 이유 : 이미지를 찾을 수 없음

답변

0

Java 9가 JDK인지 테스트하려면 다음을 수행 할 수 있습니다. 수행은 다음

> git clone https://github.com/mkowsiak/jnicookbook.git 
> cd jnicookbook/recipeNo001 
> export JAVA_HOME=$(/usr/libexec/java_home -v 9) 
> export PATH=$JAVA_HOME/bin:$PATH 
> make 
> make test 

당신이 마지막에

Hello world! 

를 참조하면, 당신의 JDK는 JNI 코드를 컴파일 할 수 있음을 의미합니다. 이제 작동한다면 rJava가 여전히 잘못된 Java 설치 (예 : Apple의 설치)를 사용하고 있음을 의미합니다. 이 경우 rJava의 오류 로그를 살펴보고 거기에 무엇이 사용되는지 확인해야합니다.

나는이 적어도 조금 도움이되기를 바랍니다.

+0

정말 고마워. 정말 고마워! 나는 이것을 실행하면,이 오류가 발생했습니다 : /Library/Java/JavaVirtualMachines/jdk-9.jdk/Contents/Home/bin/java -Djava.library.path = ./ LIB -cp 대상이 오류를 recipeNo001.HelloWorld : 찾거나에 의한 메인 클래스 recipeNo001.HelloWorld 로드 할 수 없습니다 : java.lang.ClassNotFoundException가 : recipeNo001.HelloWorld 메이크업을 : *** [테스트] 오류 1 - 이것은 무엇을 의미하는지에 대한 어떤 제안? – Kate

+0

됐지 확인 전화를 확인하십시오. "확인" "시험을"실행하기 전에 - 나는 지침이 단계 :(나도 같은 문제가 있어요 – mko

+0

을 넣어 놓친 @mko sugestion으로 내가 JDK는 JNI 코드를 컴파일 할 수 있음을 확인하지만, 질문은 이제 rJava가 올바른 Java 설치를 사용하도록 만드는 방법입니다. –