【问题标题】:How do I fix a failure to build due to a "Duplicate module name" collision in a react-native?如何修复由于 react-native 中的“重复模块名称”冲突而导致的构建失败?
【发布时间】:2017-05-16 04:09:35
【问题描述】:

RN 0.39.2

这听起来像是 React-Native Packager Failure: Duplicate module name 的复制品,但其中没有任何真正的修复,只是变通方法。还有其他的,但它们适用于旧版本的 RN,或者是相似但不同的根本原因。我有自己的解决方法(见下文),但我想实际解决问题,而不是每天执行五次这种解决方法。

错误:

Failed to build DependencyGraph: @providesModule naming collision:
  Duplicate module name: react-native-vector-icons
  Paths: /Users/collumj/research/kishar-nine/ios/build/Build/Products/Debug-iphonesimulator/kisharNine.app/package.json 
  collides with 
  /Users/collumj/research/kishar-nine/node_modules/react-native/local-cli/core/__fixtures__/files/package.json

解决方法(对我而言):

rm -rf android ios
git reset --hard
npm start

必须有一种方法可以真正解决这个问题。这个包没有正确链接吗?我在 NativeBase (http://nativebase.io/docs/v0.5.13/getting-started) 中添加时安装了它。

更新:还尝试取消链接 react-native-vector-icons 库(因为显然您不需要?不确定,链接可能在说明中是多余的)。无论如何,它没有工作,同样的错误。

【问题讨论】:

  • 您的 yarn.lock 文件看起来如何?那里有双录吗?
  • 这是一个大文件。我可以说 react-native-vector-icons 根本没有出现在那里——但它在我的 package.json 中。奇数。
  • 如果您使用了npm 命令而不是yarn 命令,可能会出现这种情况。尝试删除 node_modules 目录。 npm cache clean 然后yarn install

标签: javascript react-native native-base


【解决方案1】:

编辑:好的,这可能没有实际工作,现在检查......

解决方案是使用react-native unlink 取消链接react-native-vector-icons 库。我认为native-base 图书馆关于需要使用链接的说明已经过时。可能是?不太确定,但我可以说取消链接后我仍然可以使用图标:

<View style={{
    marginTop: 10,
    flexDirection: "row"
}}>
    <H3 style={{
        marginRight: 5
    }}>Icons:</H3>
    <Icon name='ios-home'/>
    <Icon name='ios-menu' style={{
        fontSize: 20,
        color: 'red'
    }}/>
</View>

渲染良好。

【讨论】:

  • @supriya-kalghatgi 请对此发表评论
【解决方案2】:

如果您使用了npm 命令而不是yarn 命令,则可能是这样。尝试删除 node_modules 目录。 npm cache clean 然后yarn install

【讨论】:

    猜你喜欢
    • 2016-12-17
    • 2018-08-30
    • 1970-01-01
    • 1970-01-01
    • 2019-06-21
    • 1970-01-01
    • 2017-12-28
    • 2018-08-25
    • 2022-01-19
    相关资源
    最近更新 更多