我尝试编写我的第一个R包并启动一个测试功能。 当我创建一个全新的包时,我在R文件夹中得到一个示例'Hello.R',在Man文件夹中得到'Hello.Rd'。
然后我删除helloworld测试函数并输入我的测试代码,编写文档并尝试创建新文档:
#' A Cat Function
#'
#' This function allows you to express your love of cats.
#' @param love Do you love cats? Defaults to TRUE.
#' @keywords cats
#' @export
#' @examples
#' cat_function()
cat_function <- function(love=TRUE){
if(love==TRUE){
print("I love cats!")
}
else {
print("I am not a cool person.")
}
}
devtools::document()
然后我收到了这个错误:
> devtools::document()
Updating cat2 documentation
Loading cat2
First time using roxygen2. Upgrading automatically...
Updating roxygen version in /Users/daisywang/Desktop/R Package Programming/cat2/DESCRIPTION
Warning: The existing 'NAMESPACE' file was not generated by roxygen2, and will not be overwritten.
Warning messages:
1: In readLines(file) :
incomplete final line found on '/Users/daisywang/Desktop/R Package Programming/cat2/DESCRIPTION'
2: In readLines(file) :
incomplete final line found on '/Users/daisywang/Desktop/R Package Programming/cat2/DESCRIPTION'
然后我尝试删除文件夹中的“NAMESPACE”文件,并收到无限错误:
Updating cat2 documentation
Loading cat2
Show Traceback
Rerun with Debug
Error in dev_meta(pkg$package) (from hello.R#19) :
Namespace not found for cat2. Is it loaded?
任何洞察力都赞赏!!
答案 0 :(得分:5)
行devtools::document()
不应该是hello.R
(或cat.R
)文件的一部分。此功能仅用于直接从终端调用。