r - 从包内部 packrat 库加载依赖项

标签 r devtools r-package packrat

我正在使用 packrat 构建 R 包。该软件包经过全面测试,并通过本地保存的源文件进行安装

install.packages("myPackage.tar.gz", repos = NULL, type = "source")

如果所有依赖项(在导入:字段中指定)都安装在本地计算机上,则可以工作。 但是,我想将该软件包安装在另一台未安装依赖项的服务器上。当我尝试这样做时,出现错误

"ERROR: dependencies ‘survey’, ‘dplyr’ are not available for package 'myPackage'"

我还尝试安装通过调用创建的 Packrat bundle

packrat::bundle(project = 'pathtomypackageproject', file = 'myPackage.tar.gz',
                include.lib = TRUE)

但我遇到了同样的错误。

我认为问题是,在安装“myPackage”时,R 搜索 .libPaths() 的第一个元素,没有找到任何内容,并且由于指定了“repos = NULL”,因此无处可安装软件包错误被抛出。

我仍然试图避免的一个解决方案是将包含所有依赖项的存储库传输到服务器并在安装包时指向该存储库。理想情况下,我只需传输 myPackage.tar.gz。

我的问题是是否有某种方法可以指向内部 Packrat 库(可以在其中找到所有依赖项),并从那里导入命名空间。

最佳答案

如果您已在描述文件中包含要导入的软件包列表,那么您只需在安装软件包时执行此操作:

  install.packages("myPackage",dependencies=TRUE)

关于r - 从包内部 packrat 库加载依赖项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36431714/

相关文章:

javascript - RPivotTable 能够列出超过允许的数量

java - Maven 2 的最佳企业存储库工具?

r - 将依赖项正确添加到 r 包中,以便它们自动安装

r - 如何为自定义 S3 类实现提取/子集化 ([, [<-, [[, [[<-) ] 函数?

r - 将 hive 连接到R时出现java.lang.classnotfoundexception错误

r - devtools::load_all() "cannot find function x"当函数 x 是加载包的一部分时

r - 在 CRAN 包中包含非 CRAN 包

r - R软件包的最佳许可证是哪种许可证?

R Shiny : Observe only works once

r - 使用 R 来估计具有底层马尔可夫过程的有限混合模型