使用devtools :: document构建R包错误

时间:2016-12-29 22:36:20

标签: r devtools r-package rprofile

我正在使用devtools构建R包。我已经构建了一个包含一些我希望包含的函数的包。我想在启动时加载包及其文档。我的包文件位于以下位置:

'~/global/Rcode/Startup Package'

我的.Rprofile文件如下所示:

.First <- function(){
    library(devtools)
    location <- '~/global/Rcode/Startup Package'
    document(location)
}

然而,当我打开R时,包中的函数被加载但文档却没有。

如果我在启动后运行相同的代码行,即:

library(devtools)
location <- '~/global/Rcode/Startup Package'
document(location)

然后一切正常,包正确记录。因此,这似乎是一个相当奇怪的错误!

(作为部分修复,我可以运行

install(location) 

并将其视为普通的r包,一切正常,但这需要时间,因为我打算更新包并且不想每次都运行它,特别是当devtools选项应该工作时。)

1 个答案:

答案 0 :(得分:4)

确保在加载utils之前已加载devtools,否则help无法覆盖devtools

使用.Rprofile:

.First = function(){
library(utils)
library(devtools)
document("./foo")
}

然后R启动:

[stuff]
Type 'q()' to quit R.

Updating foo documentation
Loading foo

helpdevtools版本:

> environment(help)
<environment: namespace:devtools>

删除library(utils),您会看到帮助功能是utils中找不到包文档的功能。