首页 > 解决方案 > 解决 R 包DESCRIPTION文件导入中的冲突函数

问题描述

我正在尝试构建一个依赖于以下包的 R 包:heatmaplystatsigraph. 我创建了一个DESCRIPTION包含以下内容的文件:

Imports:
    heatmaply,
    stats,
    igraph

但是,当我尝试构建时,我收到以下警告(“myPkg”是我的实际包名称的占位符):

Warning messages:
1: replacing previous import 'heatmaply::normalize' by 'igraph::normalize' when loading 'myPkg' 
2: replacing previous import 'igraph::decompose' by 'stats::decompose' when loading 'myPkg' 
3: replacing previous import 'igraph::spectrum' by 'stats::spectrum' when loading 'myPkg'

值得注意的是,我实际上并没有使用任何有冲突的功能。但是因为整个包被列为依赖项,所以冲突是一个问题。有没有优雅的方法来解决这个问题?我知道我可以使用import::from()inline 只导入我需要的函数,但我不想这样做,因为 inline 导入被认为是不好的做法。

标签: rbuildcompilationpackage

解决方案


我已经解决了这个问题。我能够通过执行以下操作来修复它:

  • 删除@import我定义的函数开头的所有语句。
  • 包括pkgName::在每个函数调用之前。

推荐阅读