我已经阅读了很多关于这个主题的帖子,并且花了太多时间试图做到正确。所以我最终决定再写一个关于这个主题的问题。
我想要的是使用带导入/导入的NAMESPACE文件正确。问题是我在RCMD检查时收到警告(在CRAN上不受欢迎):
Warning: replacing previous import by 'gtable::gtable' when loading 'strvalidator'
我的软件包(完整代码here)使用gtable
和gtable
软件包中的gWidgets
函数,因此解决方案为only import functions that you use或{{ 3}}没有解决问题。我总是使用gtable
函数的双冒号(例如gtable::gtable
和gWidgets::gtable
),如change the order of import和this帖子所述。
我对所有函数使用importFrom
(如指出this),除了我使用大量函数的包(这里我用import
代替。)我已经用{{1进行了测试但它给出了相同的警告)。
非常感谢任何帮助!
编辑: 所以我会按照@灾难性失败的要求添加我最终做的事情。我想我无法添加正确答案,因为这个问题是重复的。相反,我将解决方案添加为编辑:
我最终从NAMESPACE文件中删除了所有importFrom。我没有::使用的四个主要包在NAMESPACE中导入。其他包函数与::一起使用,并且它们的包(与四个主包一起)作为DESCRIPTION文件中的Imports列出。这种方法有效(即不会给我任何错误),但不使用importFrom。