我的NAMESPACE
文件是:
# Generated by roxygen2 (4.0.1): do not edit by hand
export(ARorderG)
export(VOBoegmc)
export(conddiffG)
................
export(sablon)
尝试通过以下方式检查包裹时:
devtools::check("C:/Users/erdogan/Documents/Revolution/causfinder")
我收到很多错误:
conddiffG: *no visible global function definition for* 'b.star'.
到目前为止我已尝试过的内容:我已将以下importfrom手动添加到NAMESPACE file
:
importFrom(np, b.star)
我为所有“......没有可见的全局函数定义...”错误做了这些。然后我又一次触发了:
devtools::check("C:/Users/erdogan/Documents/Revolution/causfinder")
不幸的是,所有 importFrom语句都是从NAMESPACE
文件中自动删除的。我读到这是因为从NAMESPACE
重新创建roxygen2
文件。
我需要importFrom语句才能成功检查发送CRAN的包,但是roxygen2
会自动删除这些importFrom语句并只保留导出语句。
如何使用importFrom
阻止roxygen2
语句的删除?
提前非常感谢任何帮助。
答案 0 :(得分:3)
roxygen2
会自动更新NAMESPACE
文件的内容。因此,为了防止importFrom
文件中的NAMESPACE
语句自动删除,必须将这些语句从包的函数的NAMESPACE
引入.R files
文件;不要手动写入NAMESPACE
文件。为了争论,让函数conddiffG使用包b.star
的一些函数np
。然后,在包的R conddiffG.R
文件夹中,我们必须在#' @export
行之前写下以下内容:
#’ @importFrom np b.star
这会在以后的过程中自动在importFrom(np,b.star)
文件中创建NAMESPACE
roxygenize
,build
,install
,library
,{{ 1}} ...)。