我正在分发需要其他软件包的R软件包。如果缺少任何内容,我会收到(例如)以下错误:
库(whSample) 错误:在loadNamespace(i,c(lib.loc,.libPaths()),versionCheck = vI [[i]])中“ whSample”的程序包或名称空间加载失败: 没有名为“ dplyr”的软件包
我有代码可以检查并在whSample程序包中安装依赖项,但是R在看到NAMESPACE中的git push
之前就失败了。这是调用包函数时的第一段代码:
import(dplyr)
答案 0 :(得分:1)
一个简短的答案是,您可以要求人们进行安装
devtools::install_local("your-package.tar.gz")
幕后发生的事情是,从本地文件安装时,install.packages
忽略了dependencies
选项。它以某种方式假定要从中安装软件包的存储库也应具有从属软件包。但是对于本地文件,没有存储库,因此不会进行依赖项处理。
答案 1 :(得分:0)
从本地文件安装软件包时,安装将在相同的本地路径上搜索依赖项...而找不到它们。
要自动安装CRAN依赖关系,可以使用:
install.packages("devtools")
devtools::install_local("MypackageName.zip")