LDT*_*LDT 8 java macos r rjava
当我使用 M1 架构的 Mac 时,我在 R 中安装软件包时遇到了糟糕的情况。
\n这是我到目前为止所遵循的步骤
\n安装 Java https://www.azul.com/downloads/?os=macos&architecture=arm-64-bit&package=jdk,使用版本 Zulu: 16.30.19
\ninstall.packages("rJava")在R中
R CMD javareconf在终端
dyn.load("/Library/Java/JavaVirtualMachines/zulu-16.jdk/Contents/Home/lib/server/libjvm.dylib")在R中
library(rJava)
这是我的错误
\nError: package or namespace load failed for \xe2\x80\x98rJava\xe2\x80\x99:\n .onLoad failed in loadNamespace() for \'rJava\', details:\n call: dyn.load(jvm, FALSE)\n error: unable to load shared object \'/Library/Java/JavaVirtualMachines/zulu-16.jdk/Contents/Home/lib/server/libjvm.dylib\':\n dlopen(/Library/Java/JavaVirtualMachines/zulu-16.jdk/Contents/Home/lib/server/libjvm.dylib, 10): no suitable image found. Did find:\n /Library/Java/JavaVirtualMachines/zulu-16.jdk/Contents/Home/lib/server/libjvm.dylib: mach-o, but wrong architecture\n /Library/Java/JavaVirtualMachines/zulu-16.jdk/Contents/Home/lib/server/libjvm.dylib: mach-o, but wrong architecture\nRun Code Online (Sandbox Code Playgroud)\n任何帮助将不胜感激
\n小智 5
我遇到了和你一样的问题,但在发现这个问题被埋在一些文档中后设法让它继续下去。
\n\n\n要将 Java(特别是 rJava 包)与 CRAN (\xe2\x80\x98x86_64\xe2\x80\x99) 二进制发行版 R 在 \xe2\x80\x98arm64\xe2\x80\x99 上结合使用,macOS 安装 \xe2\x80 \x98x86_64\xe2\x80\x99 构建 Java JRE(例如来自 AdoptOpenJDK 的 Java JRE),然后运行 sudo R CMD javareconf。
\n
\n\n要查看当前安装的 Java 的兼容版本,请运行 /usr/libexec/java_home -V -a x86_64。如果需要,设置环境变量 JAVA_HOME 以在这些变量之间进行选择,无论是从源代码构建 R 还是运行 R CMD javareconf 时。
\n
\n\n配置和构建 R 都会寻找 JRE 和编译 JNI 程序的支持(用于安装包 rJava 和 JavaGD);后者需要 JDK (Java SDK) 而不仅仅是 JRE99。
\n
https://cran.r-project.org/doc/manuals/r-patched/R-admin.html
\n这对我有用
brew tap homebrew/cask-versions && brew install --cask temurin17export JAVA_HOME=$(/usr/libexec/java_home -v 17)sudo -E R CMD javareconf然后打开 Rinstall.packages('rJava')应该可以工作
| 归档时间: |
|
| 查看次数: |
4597 次 |
| 最近记录: |