2

在 RStudio 中,我使用 renv 建立了一个新项目。我正在尝试安装 RMarkdown 包及其依赖项。但是,我的项目的路径名包含一个撇号和空格,这使我无法安装某些软件包。我无法更改此路径名(它是从 OneDrive 企业帐户同步的)。仍然可以安装这些软件包吗?

这是错误消息(我已经稍微更改了路径名,但它遵循相同的格式,撇号和空格在同一个地方)......

Error: unexpected symbol in "tools:::makeLazyLoading("rmarkdown", "/Users/name/business account's name/team/project/renv/staging/1/00LOCK-rmarkdown/00new", keep.source = FALSE, keep.parse.data = FALSE, set.install.dir = '/"
Execution halted
ERROR: lazy loading failed for package ‘rmarkdown’
* removing ‘/Users/name/business account's name/team/project/renv/staging/1/rmarkdown’
4

1 回答 1

0

可能,在您的情况下,最直接的解决方法是将该项目的库路径更改为指向某个没有任何特殊字符的地方。例如,你可以把它放在你的项目中.Renviron

RENV_PATHS_LIBRARY = /path/to/library

where/path/to/library是一些没有任何撇号或其他特殊字符的可写文件路径。

您可以尝试的另一种方法是禁用 R 的分阶段安装 - 例如:

Sys.setenv(R_INSTALL_STAGED = "false")
install.packages("rmarkdown", type = "source", INSTALL_opts = "--no-test-load")

或者,如果使用renv

Sys.setenv(R_INSTALL_STAGED = "false")
options(install.opts = "--no-test-load")
renv::install("rmarkdown")

这些选项可以在您的.Rprofile/.Renviron文件中酌情设置——?Startup更多详细信息请参阅。

于 2020-11-12T21:35:15.213 回答