问题描述
我试图加载库(tidyverse)。但是,我收到了如下错误:
Error: package or namespace load Failed for ‘tidyverse’ in loadNamespace(j <- i[[1L]],c(lib.loc,.libPaths()),versionCheck = vI[[j]]): namespace ‘tibble’ 2.1.3 is already loaded,but >= 3.0.0 is required
我遵循了每个人的建议:
remove.package("tibble")
install.packages("tibble")
但是,出现此错误:
Warning in install.packages :
cannot remove prior installation of package ‘tibble’
Warning in install.packages :
problem copying D:\Rlibraries\00LOCK\tibble\libs\x64\tibble.dll to D:\Rlibraries\tibble\libs\x64\tibble.dll: Permission denied
Warning in install.packages :
restored ‘tibble’
我在路径中发现问题-"D:\Rlibraries\00LOCK\tibble\..."
我像其他人建议的那样检查我的.libPaths()
在stackoverflow上。我明白了:
[1] "D:/Rlibraries" "C:/Program Files/R/R-3.6.3/library"
我认为问题出在路径-“ D:/ Rlibraries / 00LOCK”,因为我的默认库是"D:/Rlibraries"
。
有人知道为什么会发生这种情况以及如何解决这种迷惑吗?我以前从未遇到过这个问题。
解决方法
当软件包安装出错时,我也遇到了这种情况。
这个问题发生在其他人身上,pacman
软件包管理软件包中甚至还有一个function against this:
有时install.packages可能“严重失败,以至于无法删除锁目录:这会阻止进一步安装到库目录(或软件包的–pkglock),直到手动删除锁目录为止。” p_unlock删除留下的目录00LOCK。
您也可以手动执行:停止所有R / RStudio会话,找到00LOCK
目录(在关闭RStudio时可能会消失),然后将其删除。
这篇文章解释了how to avoid the lock。
,pacman 包中的 p_unlock 对我不起作用。 我通过清除输出解决了它(在 R Studio 中:会话 -> 重新启动并清除输出)。