使用devtools::load_all()无法运行R包示例的本地测试咨询
解决devtools::load_all()本地运行R包示例的问题
确认包结构与基础配置
- 所有函数脚本必须放在项目根目录的
R/文件夹下,devtools::load_all()仅加载该目录下的内容 - 检查
DESCRIPTION文件的RoxygenNote字段(如RoxygenNote: 7.2.3)是否配置正确,执行devtools::document()生成或更新文档与NAMESPACE文件
- 所有函数脚本必须放在项目根目录的
本地运行示例的正确操作
- 执行
devtools::load_all()(若当前工作目录不是包根目录,需指定路径如devtools::load_all("你的包路径")),将包函数加载到当前会话 - 直接在控制台运行示例代码:
foo <- example_function(bar);也可以用devtools::run_examples()批量运行所有Roxygen文档中的示例,该命令会自动处理加载逻辑
- 执行
排查"函数未找到"错误
- 确保目标函数的Roxygen注释中添加了
#' @export,重新执行devtools::document()更新导出配置,load_all()默认仅加载标记了@export的函数 - 确认示例中用到的
bar对象已在当前会话中定义,可在示例代码开头补充测试数据创建逻辑,比如bar <- 1:10
- 确保目标函数的Roxygen注释中添加了
内容的提问来源于stack exchange,提问作者Johannes Schwenzer
相关产品推荐
相关产品推荐

