【问题标题】:R: command not foundR:找不到命令
【发布时间】:2021-07-23 06:15:24
【问题描述】:

我想安装rJava,但由于以下建议而失败:

Make sure you have Java Development Kit installed and correctly registered in R.
If in doubt, re-run "R CMD javareconf" as root.

ERROR: configuration failed for package ‘rJava’
* removing ‘/Library/Frameworks/R.framework/Versions/4.0/Resources/library/rJava’
* restoring previous 
‘/Library/Frameworks/R.framework/Versions/4.0/Resources/library/rJava’

因此,我遵循了这个建议(以及其他人似乎建议的那个)并在终端中运行 R CMD javereconf,但现在我收到了 zsh: command not found: R 的消息。

如何让R CMD javereconf 工作? 谢谢。

编辑:虽然我遵循@Till 建议的博文,但我仍然难以运行R CMD javereconf(同样的错误)。与此同时,我想我应该提到我正在使用带有 Apple M1 芯片的 MacOS Big Sur。 输入 R.home() 时,RStudio 会返回 /Library/Frameworks/R.framework/Resources/R

【问题讨论】:

标签: r macos rjava


【解决方案1】:

目前 CRAN 的 R 安装包中存在一个错误,导致它无法正确安装指向 RRscript 的符号链接以供命令行使用。我刚刚通过检查 4.0.5 安装包中的 postflight 脚本验证了这一点。

基本上,uname 检查不知道 20 及更高版本的操作系统版本存在问题。

如果您的 uname -r 发布版本超过 20,这将解释安装静默失败的原因。我的建议是通过执行以下操作手动创建包应该创建的符号链接:

if uname -r | grep '^2' >/dev/null; then
    ## 15.0 and higher don't allow messing with /usr/bin
    ## so use /usr/local/bin instead
    if [ ! -e /usr/local/bin ]; then
        mkdir -p /usr/local/bin
    fi
 
    cd /usr/local/bin

    # create convenience links to R and Rscript
    rm -f R Rscript
    ln -s /Library/Frameworks/R.framework/Resources/bin/R .
    ln -s /Library/Frameworks/R.framework/Resources/bin/Rscript .
fi

我很快就会向 R-project 提交一个错误。

【讨论】:

    【解决方案2】:

    通过在 Rstudio 的 R 控制台上运行 R.home() 来查找 R 和 Rscript 在磁盘上的位置。 然后,按照this 的指导,从R.home() 复制返回的位置并粘贴到/etc/paths 的新行上。

    然后,重启终端并运行R CMD javareconf

    【讨论】:

      猜你喜欢
      • 2021-09-16
      • 2013-09-07
      • 2015-06-17
      • 1970-01-01
      • 2022-01-10
      • 2018-05-09
      • 1970-01-01
      相关资源
      最近更新 更多