packrat::resolve() 在 Rtools 已经安装的情况下一直要求我安装

问题描述

我今天发现了非常(非常)酷的 packrat R 包,可以让您的项目重现。

但是,当我通过在 Rstudio 中使用 packrat 为我的项目使用 packrat::resolve() 时,需要 Rtools 的包会触发一个弹出窗口,要求我安装 Rtools(虽然它已经安装在 { {1}})。另一方面,Rstudio 安装在 "C:\rtools40" 中。

我尝试在另一台笔记本电脑上构建此项目,但没有出现此问题(Rtools 安装相同,Rstudio 直接安装在 "C:\Program Files\RStudio" 中)。

这意味着 Rstudio 在第一台笔记本电脑上找不到 rtools 路径。

这是一个常见问题吗?可以链接到Rstudio路径吗?

信息:

C:\RStudio

干杯!

编辑

事实证明,使用 Packrat (renv) 的新替代方案解决了这个问题。

解决方法

您需要将 RTools40 添加到您的 PATH。您可以使用 UI(在 Windows 搜索中搜索“环境变量”)或使用

library(devtools)
Sys.setenv(PATH = paste("C:/Rtools40/bin",Sys.getenv("PATH"),sep=";"))
Sys.setenv(BINPREF = "C:/Rtools40/mingw_$(WIN)/bin/")