我即将发布一个R包,但是在R中加载包时打印到R控制台的消息有问题。我的包依赖于其他几个包,而这些其他包显示各种欢迎和启动消息。这是因为我将软件包添加到Depends
文件中的DESCRIPTION
字段而不是Imports
字段。我的理解是使用Imports
字段会抑制启动消息。但是,如果我导入包而不是依赖它们,那么帮助文件中的我的示例不再起作用,因为这些包中的某些函数被同一个包中的其他函数使用,而这些函数又由我使用的函数使用我的包裹代码,找不到。如果不导入消息(即将它们放在Depends
字段中),我该怎么做才能抑制几十行消息?或者,或者,如何在导入时确保功能全部可用?是否会出现问题,因为有问题的包不会导出间接需要的功能?即使我明确导入有问题的函数,它似乎也不起作用......
修改 - 更多详情:我的包中的函数调用ergmMPLE()
包中的ergm
函数。我已将Imports: ergm
添加到DESCRIPTION
文件,将import("ergm")
添加到NAMESPACE
文件。当我在我的包中使用该函数时,我收到一条错误消息,check.control.class
函数无法找到函数ergmMPLE
。所以我查找了这个函数,它似乎位于另一个名为statnet.common
的包中。因此,我将statnet.common
添加到Imports
文件中的DESCRIPTION
字段,并将import("statnet.common")
添加到NAMESPACE
文件中。现在看起来ergmMPLE
函数仍然找不到check.control.class
函数。我的解决方案是让我的包依赖于statnet.common
包,但是我再次遇到启动消息的问题......
答案 0 :(得分:1)
您可以将包放在Import
部分,并使用import
或importForm
从其他包中加载必要的功能。有关详细信息,请参阅: