R会话在renv 0.17.2中冻结

imzjd6km  于 2023-04-09  发布在  其他
关注(0)|答案(2)|浏览(122)

我在Rstudio $version [1] ‘2023.3.0.386’(R版本4.2.3)中打开了一个新项目,并启动了renv。
初始化正常运行,但是,在完成R会话冻结之后。
当我重新启动RStudio时,R会话再次冻结。
控制台将显示以下内容:

R version 4.2.3 (2023-03-15 ucrt) -- "Shortstop Beagle"
Copyright (C) 2023 The R Foundation for Statistical Computing
Platform: x86_64-w64-mingw32/x64 (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

* Project 'xx/_analysis' loaded. [renv 0.17.2-24]

当我打开一个没有renv的项目时,R不会冻结。

我尝试的内容:

我试图删除R项目和renv文件夹,并创建一个新的R项目,但是,我得到了同样的错误。

更新:我现在删除了R,Rtools和RStudio,删除了所有R包文件,并重新安装了所有内容(用install_github("rstudio/renv")进行renv,运气不好,如果我现在启动renv::init(),它会挂起

如何查找可能的原因/调试?

ylamdve6

ylamdve61#

感谢polkas的评论,我可以使用browser()调用适当地调试renv::init()

结果:

  • 我发现一个同事创建的一个新项目子文件夹中包含了一些100k的.txt文件,renv在这些文件中搜索包时遇到了问题。
  • renv::init(bare=TRUE)(即初始化项目而不尝试发现和安装R包依赖项)工作
  • 我不知道renv搜索 * 项目文件夹中的所有文件 *,我以为它只搜索.R脚本
    解决方案
  • 如果您的项目文件夹包含许多文件,则阻止renv扫描所有文件

在我的例子中,我写了一个renvignore file(不包括所有.txt文件)并将其存储在项目文件夹中。最后,renv再次按预期工作。

lp0sw83n

lp0sw83n2#

试试options(renv.download.override = utils::download.file)
类似问题:https://community.rstudio.com/t/cant-install-packages-with-renv/96696

相关问题