簡體   English   中英

如何在 mac 中刪除與 rJava 相關的錯誤消息

[英]how to remove error message in mac relate to rJava

我已經在 R 中安裝了 rJava 包,我還在我的 mac 上安裝了 Java 64 位,但不知何故,當我嘗試加載 rJava 包時,我一直收到錯誤消息。

library(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.5/Resources/library/rJava/libs/rJava.so':
  dlopen(/Library/Frameworks/R.framework/Versions/3.5/Resources/library/rJava/libs/rJava.so, 6): Library not loaded: /Library/Java/JavaVirtualMachines/jdk-9.jdk/Contents/Home/lib/server/libjvm.dylib
  Referenced from: /Library/Frameworks/R.framework/Versions/3.5/Resources/library/rJava/libs/rJava.so
  Reason: image not found

我嘗試了所有我能做的事情。 我試圖在終端中插入sudo ln -f -s $(/usr/libexec/java_home)/jre/lib/server/libjvm.dylib /usr/local/lib

我也試過Sys.setenv(JAVA_HOME='/Library/Java/JavaVirtualMachines/jdk1.8.0_91.jdk/Contents/Home/jre')

dyn.load(paste0(system2('/usr/libexec/java_home',stdout = TRUE), '/jre/lib/server/libjvm.dylib'))
dir(paste0(system2('/usr/libexec/java_home',stdout=TRUE)))

但它們都對我不起作用 不斷收到與上述相同的錯誤消息。 有人可以幫我嗎。 謝謝

我在 Mac 上遇到了同樣的問題。 對於 Java 9,路徑與您發布的路徑不同。

sudo ln -f -s $(/usr/libexec/java_home)/lib/server/libjvm.dylib /usr/local/lib

也在下面更新R。

MY_R_VERSION=$(Rscript -e "cat(with(R.version, sprintf('%s.%s', major, substring(minor, 1, 1))))")
ln -s /usr/local/lib/libjvm.dylib /Library/Frameworks/R.framework/Versions/$MY_R_VERSION/Resources/lib/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM