R devtools:文档Dependency包不可用

时间:2014-10-03 03:09:27

标签: r devtools

您好我正在关注Hilary的教程here和来自Hadley Wickham的here试图创建虚拟包。

但是,在这种情况下,我的包需要一些外部依赖XMLRCurl,当我运行命令文档时,它会抱怨:

> setwd('/home/datafireball/projects/Rprojects/rgetout/rgetout')
> document()
Error: could not find function "document"
> library(devtools)
> document()
Updating rgetout documentation
Loading rgetout
Loading required namespace: XML
Error in (function (dep_name, dep_ver = NA, dep_compare = NA)  : 
  Dependency package XML not available.
> 

这是我的DESCRIPTION文件。

Package: rgetout
Title: A R package to get all the outlinks for a given URL
Version: 0.1
Authors@R: "Eric Cartman <Eric.Cartman@gmail.com> [aut, cre]"
Description: This package is intended to include as much web extraction functionality as much as     possible. It starts with one function. getout will extract
all the outlinks for a given URL with a user-agent that you can customize.
Depends: R (>= 3.0.2)
Imports:
    XML,
    RCurl
License: MIT
LazyData: true

如果您想获得更多信息,请参阅source code github repo

2 个答案:

答案 0 :(得分:2)

如果您遇到此问题,即使您已安装并加载了软件包,我建议您执行以下操作。

  • 删除Imports:文件的Suggests:DESCRIPTION条目。
  • 确保您通过library(devtools)
  • 开展工作
  • 现在开始将库添加到DESCRIPTION文件中,方法是在控制台上运行以下命令:devtools::use_package("dplyr")以获取所需的任何Imports:。对每个所需的库重复此步骤。

就我而言,dplyr是拒绝加载的人。您可以通过执行以下操作来确定程序包的位置:devtools::use_package("dplyr", "Suggests")

答案 1 :(得分:1)

假设您具有开发包所需的工具/依赖关系 这样做。

utils::install.packages有一个依赖项参数,它将尝试安装程序包所依赖的已卸载软件包/(以它们所依赖的方式(建议/依赖/链接)。

devtools::install_github也会表现相似。

安装软件包并将其记录为开发组件是一项安静的不同活动