npm installが、満たされていない依存関係があると言うのはなぜですか?



Why Does Npm Install Say I Have Unmet Dependencies



この記事の翻訳元: npm installが、満たされていない依存関係があると言うのはなぜですか?

ノードパッケージがあります。 ノードパッケージがあります。 実行するとnpm installパッケージルートから、たくさんのものをインストールしますが、次のようないくつかのエラーメッセージを出力します。 パッケージのルートディレクトリから実行する場合npm install 、それは多くのものをインストールしますが、それは次のようないくつかのエラーメッセージを出力します:



npm警告アンメット依存関係/ Users / seanmackesey / google_drive / code / explore / generator / node_modules / findup-sync / node_modules / globにはroot @ xxxxx'〜1.2.0 'が必要ですが、ロードされます npmWARNは依存関係を満たしていません/ Users / seanmackesey / google_drive / code / explore / generator / node_modules / findup-sync / node_modules / globにはroot @ xxxxx'〜1.2.0 'が必要ですが、ロードされます

正確に何がnpm installかについて混乱しているに違いありませんします。 私は正しいnpm install何ができるかについて混乱している。 依存関係を検出した場合、それをインストールするべきではありませんか? 依存関係を検出した場合、インストールする必要がありますか? どのような条件下でこのようなエラーメッセージが表示されますか?また、依存関係を解決するにはどうすればよいですか? どのような状況でそのようなエラーメッセージが表示され、依存関係を解決する方法はありますか?




#1階

参照: https://stackoom.com/question/1P7tR/ npm-installが、満たされていない依存関係があると言うのはなぜですか


#2階

依存関係の解決が少し壊れているためだと思います。を参照してください。 https://github.com/npm/npm/issues/1341#issuecomment-20634338 これは、依存関係の解決が少し壊れているためだと思います。を参照してください。 https://github.com/npm/npm/issues/1341#issuecomment-20634338

考えられる解決策は次のとおりです。 考えられる解決策は次のとおりです。



  1. 満たされていない依存関係を含むトップレベルモジュールを手動でインストールする必要があります:npm install root@xxxxx 満たされていない依存関係を含むトップレベルモジュールを手動でインストールする必要があります:npm install root@xxxxx

  2. package.jsonを再構築します。 package.jsonを再編成します。 すべての高レベルモジュール(他のモジュールの依存関係として機能します)を下部に配置します。 すべての高レベルモジュールを(他のモジュールの依存関係として)一番下に配置します。

  3. npm installを再実行しますコマンド。 再実行npm installコマンド。

この問題は、タイムアウトなどの理由でnpmがすべてのパッケージをダウンロードできなかったことが原因である可能性があります。 この問題は、タイムアウトまたはnpmがすべてのパッケージをダウンロードできないその他の理由が原因である可能性があります。

注:npm install root@xxxxxを使用して、失敗したパッケージを手動でインストールすることもできます。 。 注:npm install root@xxxxx失敗したパッケージを手動でインストールすることもできます。

実行する前にnpm install 、次の手順を実行すると役立つ場合があります。 実行中npm install以前は、次の手順が役立つ場合があります。

  • rm -rf node_modules/を使用してnode_modulesを削除します 使用rm -rf node_modules/ node_modulesを削除
  • 実行npm cache clean 実行npm cache clean

「node_modulesの削除」が必要な場合があるのはなぜですか? 「node_modulesを削除する」必要があるのはなぜですか? npm install中にネストされたモジュールのインストールに失敗した場合、後続のnpm installネストされた依存関係が欠落しているものは検出されません。 ネストされたモジュールがnpm installの場合インストール中にインストールできない場合、フォローアップnpm installネストされた依存関係が欠落しているものは検出されません。

その場合は、欠落しているネストされたモジュールの最上位の依存関係を削除して、npm installを実行するだけで十分な場合があります。再び。 この場合、欠落しているネストされたモジュールの最上位の依存関係を削除して、再度実行することがありますnpm install 見る 見る


#3階

npm installの間にWIFIがダウンしたときに私に起こりました。 in npm install処理中のWIFI npm installこれが私に起こったとき。 node_modulesを削除しますと再実行npm installそれを修正しました。 削除node_modulesそして再実行npm install修正します。


#4階

上記の回答は、node_modulesを削除した後でも完全には役に立ちませんでしたディレクトリ。 上記の回答を削除してもnode_modulesカタログは完全には役に立ちませんでした。

以下のコマンドは私を最終的に助けました: 次のコマンドは最終的に私を助けました:

npm config set registry http://registry.npmjs.org/

これにより、安全でないHTTP接続を介してノードモジュールがプルされることに注意してください。 これにより、安全でないHTTP接続を介してノードモジュールがプルされることに注意してください。

Src: https://stackoverflow.com/a/13119867/4082503 Src: https//stackoverflow.com/a/13119867/4082503


#5階

NPMを最新バージョンにアップグレードすると、これに大いに役立ちます。 NPMを最新バージョンにアップグレードすると、非常に役立ちます。 上記のduleの答えは、依存関係の管理が少し壊れていると言うのは正しいですが、これは主に古いバージョンのnpm用のようです。 上記のduleからの答えは正しいです。依存関係の管理に問題があると書かれていますが、これは主に古いバージョンのnpmにあるようです。

コマンドnpm listインストールされているすべてのリストが表示されますnode_modules コマンドnpm listインストールされているすべてのnode_modulesのリストを提供します。 バージョン1.4.2からバージョン2.7.4にアップグレードしたとき、以前にWARN unmet dependencyでフラグが立てられていた多くのモジュールそのようにもはや注目されませんでした。 バージョン1.4.2からバージョン2.7.4にアップグレードすると、以前は次のようにマークされていましたWARN unmet dependencyアイテムの多くのモジュールがそのように表示されなくなりました。

npmを更新するには、npm install -g npmと入力する必要がありますMacOSXまたはLinuxの場合。 npmを更新するには、MacOSXまたはLinuxで入力する必要がありますnpm install -g npm Windowsでは、nodejsインストーラーを再ダウンロードして再実行する方が、npmを更新するためのより効果的な方法であることがわかりました。 Windowsでは、nodejsインストーラーを再ダウンロードして再実行する方が、npmを更新するためのより効果的な方法であることがわかりました。


#6階

同様の流れで、もう1つのステップを追加します。 同様のことについて、私は別のステップを追加します。

npmバージョン> 1.4.9では、「npminstall」はdevDependenciesをインストールすることに注意してください。 npmバージョン> 1.4.9では、「npminstall」はdevDependenciesをインストールすることに注意してください。 まず、既存のモジュールとキャッシュを削除してみてください。 まず、既存のモジュールとキャッシュを削除してみてください。

remove node_modules $ rm -rf node_modules/ run $ npm cache clean

次に、試してください: 次に、試してください:

npm install --dev npm update --dev

これにより、少なくとも再帰的な依存関係の解決が解決されます。 これにより、少なくとも再帰的な依存関係の解決が解決されます。