【发布时间】:2016-12-25 17:08:35
【问题描述】:
Failed to build DependencyGraph: @providesModule naming collision:
Duplicate module name: react-native-vector-icons
Paths: /Users/collumj/research/kishar-nine/node_modules/react-native/local-cli/core/__fixtures__/files/package.json collides with /Users/collumj/research/kishar-nine/ios/build/Build/Products/Debug-iphonesimulator/kisharNine.app/package.json
This error is caused by a @providesModule declaration with the same name across two different files.
Error: @providesModule naming collision:
Duplicate module name: react-native-vector-icons
Paths: /Users/collumj/research/kishar-nine/node_modules/react-native/local-cli/core/__fixtures__/files/package.json collides with /Users/collumj/research/kishar-nine/ios/build/Build/Products/Debug-iphonesimulator/kisharNine.app/package.json
几天前我安装了react-native-vector-icons(并且正在工作)。有一个调试器线没有被击中的问题,所以我认为重新启动打包程序可能会有所帮助。现在打包程序根本不会启动。我有:
- 删除
node_modules并重新安装 - 从之前的提交中检出代码(没有 react-native-vector-icons)并删除
node_modules等。 -
./node_modules/react-native/packager/packager.sh clean react-native unlink react-native-vector-iconswatchman watch-del-all-
rm -rf $TMPDIR/react-* && watchman watch-del-all && rm -rf ios/build/ModuleCache/* && rm -rf node_modules/ && npm cache clean && npm i --silent
仍然遇到同样的错误。我可以签出一个新的 repo 副本并毫无问题地启动它,所以我必须假设这是一个缓存/构建问题。
我该如何解决这个问题?
【问题讨论】:
-
您可能只是错过了npm prune 步骤,该步骤会删除全局缓存。
-
没有变化。在
rm -rf $TMPDIR ...行添加了 prune,没有改变任何东西。 -
确保这个包没有在所有文件中包含两次,你应该将它添加为依赖项(如
android/settings.gradle、MainApplication.java等)。 -
嗯,解决方案似乎是删除我的 ios 和 android 文件夹并重置为我上次签到。有什么东西建错了吗?不管怎样,把它放在问题的答案中,我会把它标记为已解决。
标签: node.js react-native