【发布时间】:2018-06-10 14:59:54
【问题描述】:
我在 MacOS 上的问题是我可以从 GUI(也称为控制台,从 CRAN 下载)、终端或从 RStudio 使用 R,但我不能让它们以相同的方式运行。
具体的例子是我可以在终端和 RStudio 上使用 rJava,但不能在 GUI 上使用。 Rmarkdown pdf 输出也会发生类似的情况。我通常会从 GUI 中得到错误,但在终端或 RStudio 上一切都很好。如何将 R GUI 设置更新为与终端相同?
ps。例如R CMD javareconf 命令处理的是终端 R 而不是 R GUI。
编辑:它实际上不需要一个最小的工作示例,但让我们在安装后尝试library(rJava)。
R 从终端调用(与 RStudio 相同)
没问题。
sessionInfo()
R version 3.5.0 (2018-04-23)
Platform: x86_64-apple-darwin15.6.0 (64-bit)
Running under: macOS High Sierra 10.13.5
Matrix products: default
BLAS: /Library/Frameworks/R.framework/Versions/3.5/Resources/lib/libRblas.0.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/3.5/Resources/lib/libRlapack.dylib
locale:
[1] C/UTF-8/C/C/C/C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
loaded via a namespace (and not attached):
[1] compiler_3.5.0
R 图形界面
sessionInfo()
R version 3.5.0 (2018-04-23)
Platform: x86_64-apple-darwin15.6.0 (64-bit)
Running under: macOS High Sierra 10.13.5
Matrix products: default
BLAS: /Library/Frameworks/R.framework/Versions/3.5/Resources/lib/libRblas.0.dylib
LAPACK: /Library/Frameworks/R.framework/Versions/3.5/Resources/lib/libRlapack.dylib
locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
attached base packages:
[1] stats graphics grDevices utils datasets methods base
loaded via a namespace (and not attached):
[1] compiler_3.5.0 tools_3.5.0
Sys.getenv() 之间的一些区别是 GUI 有以下额外的
LD_LIBRARY_PATH :@JAVA_LD@
DYLD_LIBRARY_PATH /Library/Java/JavaVirtualMachines/jdk-10.0.1.jdk/Contents/Home/lib/server
简要更新:我能够通过 using this link 纠正 Rmarkdown 情况,并通过在 R 控制台上写入 ?Startup 来阅读帮助。更改了我的R.home()/etc/ 上的Renviron 文件。但还是没有rJava。
【问题讨论】:
-
请提供一个可重现的最小示例。
-
我们需要来自所有环境的
sessionInfo()输出。/etc/profile和~/.bash_profile的输出。Sys.getenv()的输出也来自所有环境。哦,您也不应该发布其中一些位,因为它们可能包含敏感数据(如令牌或凭据)。众所周知,rJava很难正常工作。 -
我从这个小小的常见问题解答项目中得到了一半的回复:cran.r-project.org/bin/macosx/…,但 rJava 问题仍然存在。
-
向问题添加了信息。不知何故,这台 Mac 上没有 bash_profile。
-
我不知道它是否仍然相关,但 rJava 的 rJava.so 文件明确指出 jdk-9 而我有 10 个。@hrbrmstr
标签: r