【发布时间】:2019-01-13 17:10:18
【问题描述】:
当我在我的计算机上打开一个 R package 项目时,我想自动加载并附加library() 列出的所有给定的NAMESPACE 中的包打包为import()s(不是importFrom()s)。
这很有帮助,因为它使我能够更快速地以交互方式评估代码。否则,我会浪费时间处理,比如说,
glue("foo")
# Error in glue("foo") : could not find function "glue"
即使我的NAMESPACE 中有胶水。
不是什么大不了的事,有点剃掉了几秒钟和相当多的挫败感。
请注意,这仅适用于 package 开发的上下文。
在非包项目中,我可以将library() 放入我的.Rprofile,但对于包 已经在NAMESPACE 中声明的包,这将是多余的。 p>
【问题讨论】:
-
既然您提到了
devtools(在您的回答中),您是否使用devtools::load_all()进行包的交互式开发? -
是的,但
devtools::load_all()似乎并没有单独加载在NAMESPACE中声明为导入的包。 -
嗯,对不起,我以为是……
-
是因为
devtools::load_all读取的是DESCRIPTION而不是NAMESPACE?