r为什么调用包r.oo并生成错误

r为什么调用包r.oo并生成错误,r,R,据我所知,在这个问题出现之前,我从未安装过R.oo。自从我安装了R版本3.6以来,我发现当我尝试使用library()加载它们时,至少有几个包失败了。我在我的系统上安装了R.oo(Rstudio、macbookpro),但后来删除了它,看看这会有什么不同。最近的例子是 library(qrcode) 如果没有安装R.oo,我会收到以下错误消息 Error: package or namespace load failed for ‘qrcode’ in loadNamespace(j <

据我所知,在这个问题出现之前,我从未安装过
R.oo
。自从我安装了R版本3.6以来,我发现当我尝试使用
library()
加载它们时,至少有几个包失败了。我在我的系统上安装了R.oo(Rstudio、macbookpro),但后来删除了它,看看这会有什么不同。最近的例子是

library(qrcode)
如果没有安装R.oo,我会收到以下错误消息

Error: package or namespace load failed for ‘qrcode’ in loadNamespace(j <- i[[1L]], c(lib.loc, .libPaths()), versionCheck = vI[[j]]):
 there is no package called ‘R.oo’
接下来,我完成了成功加载并返回的库(R.oo)

Loading required package: R.methodsS3
R.methodsS3 v1.7.1 (2016-02-15) successfully loaded. See ?R.methodsS3 for help.
R.oo v1.22.0 (2018-04-21) successfully loaded. See ?R.oo for help.
嗯,我没有安装R.methodsS3,所以继续安装,然后重试
library(qrcode)
。这次没有错误

出现此问题的第二个软件包是
mailR
。解决方案似乎再次是运行
library(R.oo)
library(R.methods3)
,然后运行
library(mailR)


虽然这似乎有效(没有太多测试),但它似乎是一个相当困难的问题。有没有更好的方法来处理这个问题?

当你问“更好的方法来处理这个问题”时,“这个”到底是什么?如果删除包依赖项,则可能会使包停止工作。如果您尝试重新安装软件包,它应该尝试重新安装依赖项,假设它们适用于您的R版本。我不想显式添加两个我不使用的库-R.oo和R.methodsS3tools::package_dependencies(“mailR”,recursive=TRUE)`returns
$mailR[1]“rJava”“stringr”“R.utils”“R.oo”“methods”“utils”“tools”“tools”[8]“R.methods3”“glue”“magrittr”“stringi”“stats”
,因此有人在调用R.methods3。不确定现在要做什么。这些包被列为
mailR
的依赖项,因此要使用
mailR
您需要使用这两个包。如果您在没有首先对这两个包调用
library()
的情况下调用
library(mailR)
,有什么不起作用?如果至少安装了(不必加载)mailR,您似乎不太可能得到“没有调用的包”。mailR的直接依赖项是rJava、stringr和R.utils。我上面列表中的其余依赖项是这些依赖项的依赖项。mailR的情况与qrcode注册的S3方法被覆盖的情况相同(见上文)。该问题的状态:
Loading required package: R.methodsS3
R.methodsS3 v1.7.1 (2016-02-15) successfully loaded. See ?R.methodsS3 for help.
R.oo v1.22.0 (2018-04-21) successfully loaded. See ?R.oo for help.