2

我正在编写一个 R 包,我需要它在用户潜入之前运行一小段代码。具体来说,这是我的.onAttach()

#' @importFrom httr GET
.onAttach <- function(libname, pkgname) {
    url <- "http://news.bbc.co.uk"
    sink <- GET(url)
}

httr列在我的说明文件的导入部分下。

我的问题是当我运行时R CMD check出现以下错误:

Error : .onAttach failed in attachNamespace() for 'scholar', details:
  call: default_ua()
  error: could not find function "packageVersion"
Error: package or namespace load failed for 'scholar'

由于packageVersion()is in utils,我猜这在包加载过程的这个阶段不可用,我可以通过添加library(utils)第一行来“解决”这个问题,.onAttach()但是我得到了这个注意:

* checking dependencies in R code ... NOTE
'library' or 'require' call to 'utils' in package code.
  Please use :: or requireNamespace() instead.
  See section 'Suggested packages' in the 'Writing R Extensions' manual.

我尝试用替换库调用,requireNamespace("utils")但这也无济于事。

对于如何解决此问题的任何建议,我将不胜感激;我自己的搜索没有发现任何有用的东西。

4

0 回答 0