问题描述
我正在用 R 创建自己的包。在我的包中,我使用了 ggnet2
包中的 Ggally
函数。我正在尝试准备好我的包 CRAN,我使用了 devtools
包中的一堆测试。
我的问题是,当我运行以下 devtools
测试时出现错误:
library(devtools)
check_win_release()
check_win_devel()
被抛出的错误是:
Error: please install the package 'network'. install.packages('network')
Backtrace:
x
1. \-myPackage::plotNetwork(vi) test_plots.R:34:2
2. +-base::suppressMessages(...)
3. | \-base::withCallingHandlers(...)
4. \-Ggally::ggnet2(...)
5. \-Ggally:::require_namespaces(c("network","sna","scales"))
require_namespaces(c("network","scales"))
在我的 NAMESPACE
文件中,我导入了 ggnet2
函数以及 ggplot2
,如下所示:
import(ggplot2)
importFrom(Ggally,ggnet2)
而且我的包内的 Ggally
文件中的 Imports 字段下还有 ggplot2
和 DESCRIPTION
。
我已尝试将 network
和 sna
添加到我的 suggests
文件中的 DESCRIPTION
字段,但错误仍然存在(我正在使用 scales
在我的包中的其他地方打包,所以我单独导入)。
此错误来自我与 devtools::test()
一起使用的测试文件,但是(在我的机器上安装了这些软件包)我猜当我运行 check_win_release()
时,测试的机器正在执行没有所需的包!?
我想知道如何解决这个错误?或者在从其他包的其他函数导入需要命名空间的函数时,最佳实践是什么?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)