16

これは、開発中に一見ランダムに発生しました。npm startまたはを実行しようとするとreact-native run-ios、次のエラーが表示されます。

Failed to build DependencyGraph: @providesModule naming collision:
  Duplicate module name: react-native-vector-icons
  Paths: /Users/chandlervdw/Repos/Relay/mobile/node_modules/react-native/local-cli/rnpm/core/test/fixtures/files/package.json collides with /Users/chandlervdw/Repos/Relay/mobile/node_modules/react-native/Libraries/Animated/release/package.json

This error is caused by a @providesModule declaration with the same name accross two different files.
Error: @providesModule naming collision:
  Duplicate module name: react-native-vector-icons
  Paths: /Users/chandlervdw/Repos/Relay/mobile/node_modules/react-native/local-cli/rnpm/core/test/fixtures/files/package.json collides with /Users/chandlervdw/Repos/Relay/mobile/node_modules/react-native/Libraries/Animated/release/package.json

This error is caused by a @providesModule declaration with the same name accross two different files.
    at HasteMap._updateHasteMap (/Users/chandlervdw/Repos/Relay/mobile/node_modules/node-haste/lib/DependencyGraph/HasteMap.js:162:15)
    at /Users/chandlervdw/Repos/Relay/mobile/node_modules/node-haste/lib/DependencyGraph/HasteMap.js:140:25

奇妙なことに、/Users/chandlervdw/Repos/Relay/mobile/node_modules/react-native/local-cli/rnpm/core/test/fixtures/files/package.json実際にはreact-native-vector-iconsモジュールの名前としてリストされていますか???

そのファイルを削除すると、エラーは発生しなくなりますが、パッケージャーは 93% でスタックし、まったく関係のないライブラリが見つからないと文句を言います。

レポを吹き飛ばし、、、、さらにはアップグレードを含むすべてを再インストールしnpmましrnpmnode。私は、問題なくパッケージャーを実行できるチームメイトと同じバージョンのすべてを実行しています。

4

4 に答える 4

8

他の誰かが将来この問題を抱えた場合に備えて、これを回答として投稿してください。

ノード パッケージ マネージャーが最初のビルド フェーズを実行しているときに、アクセス許可を使用して実行すると、適切な特権が付与されますnpm startsudoこれは、実行しているシェル/ユーザーの権限が制限されている場合にのみ発生するようです。強制的に特権を sudo にエスカレートすると、パッケージ マネージャーはビルドを完了するための完全な制御を得ることができます。

于 2016-08-11T01:30:01.137 に答える
4

次のようなエラーが発生していました

Failed to build DependencyGraph: @providesModule naming collision:
Failed to build DependencyGraph: @providesModule naming collision:
Duplicate module name: accepts
Duplicate module name: accepts

npmのキャッシュ.npmを削除して再実行packagerすることで解決しました--reset-cache

rm -rf ~/.npm
于 2016-10-24T21:11:56.510 に答える