2017-10-26 15 views
0
> registerDoSNOW(makeCluster(4, type="SOCK")) Loading required package: methods Loading required package: DBI Loading required 
> package: rJava Error: package or namespace load failed for ‘rJava’: 
> .onLoad failed in loadNamespace() for 'rJava', details: call: 
> dyn.load(file, DLLpath = DLLpath, ...) error: unable to load shared 
> object 
> '/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): Library not loaded: @rpath/libjvm.dylib Referenced from: 
> /Library/Frameworks/R.framework/Versions/3.4/Resources/library/rJava/libs/rJava.so 
> Reason: image not found Error: package ‘rJava’ could not be loaded 
> Execution halted 

이 문제는 Knitr을 사용하려고 할 때도 발생합니다. 따라서 registerDoSNOW()와는 관련이 없지만 rJava와 잘못된 경로 지정과 관련이 있습니다.rJava 오류로 registerDoSNOW() 또는 외부 RStudio 프로세스가로드됩니다.

rJava가로드되지 않는 일반적인 해결책 (예 : rJava load error in RStudio/R after "upgrading" to OSX Yosemite)을 조사했습니다.

1) 내 자바는 64 비트 버전 2) 3 미세 library(rJava)로드) 내가

registerDoSNOW(makeCluster(4, type="SOCK"))이는 내가 3.3에서 R 3.4.2로 업그레이드 한 후 일어나고 시작 사용하려고하면 그것은 단지입니다입니다. data.table은 64 비트 아키텍처를 사용할 수 없다고 불평했기 때문에 업그레이드했습니다. 내가 업그레이드 할 때, RStudio는 Java를 실행하지 않을 것입니다. 실행으로 수정했습니다. sudo ln -f -s $(/usr/libexec/java_home)/jre/lib/server/libjvm.dylib /usr/local/lib

여기에서 해결책을 시도한 http://paulklemm.com/blog/2015-02-20-run-rjava-with-rstudio-under-osx-10-dot-10/은 사용할 수 없습니다.

자바 버전 "1.8.0_101"자바 (TM) SE 런타임 환경 (빌드는 1.8.0_101-B13) 자바 핫스팟 (TM) 64 비트 서버 VM (혼합 모드를 25.101-B13를 구축)

답변

1

나는이 프로세스가 당신의 문제를 해결할 것이라고 믿습니다.

  1. 파일이 이미 존재하는 경우, 맥 터미널 세션에서 sudo ln -f -s $(/usr/libexec/java_home)/jre/lib/server/libjvm.dylib /usr/local/lib

  2. 실행 R CMD javareconf으로 덮어 아칸소 터미널

  3. 실행 ln -s $(/usr/libexec/java_home)/jre/lib/server/libjvm.dylib /usr/local/lib

    • 내에서 rJava 설치

기본적으로 rJava가 필요로하는 Java 파일을 설정 한 다음 R을 재구성하여 어디서 볼 수 있는지 알 수 있습니다.

/opt/X11/lib/*와 같은 오류가 발생하면 here이라는 XQuartz를 설치해야합니다.

+0

승리를위한'R CMD javareconf'! 고맙습니다! – metalaureate