私はWindows 10にいて、Node 5.6.0とnpm 3.6.0を使っています。私は作業フォルダにangular-materialとmdiをインストールしようとしています。 npmインストールangle-material mdi errors with:
+-- [email protected]
+-- UNMET PEER DEPENDENCY angular-animate@^1.5.0
+-- UNMET PEER DEPENDENCY angular-aria@^1.5.0
+-- [email protected]
+-- UNMET PEER DEPENDENCY angular-messages@^1.5.0 `-- [email protected]
npm WARN enoent ENOENT: no such file or directory, open
'C:\Users\xxxxx\Desktop\ngClassifieds\package.json'
npm WARN [email protected] requires a peer of
angular-animate@^1.5.0 but none was installed.
npm WARN [email protected] requires a peer of angular-aria@^1.5.0
but none was installed.
npm WARN [email protected] requires a peer of
angular-messages@^1.5.0 but none was installed.
AngularJS MaterialとMDIをインストールするには、どうすればよいでしょうか。
npmはもはやピアの依存関係をインストールしないので、手動でインストールする必要があります。必要なdepsにnpm install
を実行してから、メインの依存関係を再度インストールしてください。
コメントに返信:
それはそのメッセージの中に正しい、それはあなたが行方不明になっている学科を示しています
UNMET PEER DEPENDENCY angular-animate@^1.5.0 +--
UNMET PEER DEPENDENCY angular-aria@^1.5.0 +-- [email protected] +
UNMET PEER DEPENDENCY angular-messages@^1.5.0 `-- [email protected]`
だからあなたはnpm install angular angular-animate angular-aria angular-material angular-messages mdi
する必要があります
UNMET PEER DEPENDENCY
ファイルで指定された1つ以上のモジュールの依存関係が満たされていない場合、package.json
エラーがスローされます。警告をよく確認し、正しいバージョンの依存関係でpackage.json
ファイルを更新してください。
それから走りなさい
rm -rf node_modules/
npm cache clean
npm install
これにより、必要なすべての依存関係が正しくインストールされます。
私の場合、すべての依存関係はすでに存在していました。クラッシュした可能性があるので、その場合は _ npm _ を更新してください。それは私の問題を解決しました。
npm install -g npm
npm-install-peers 私のために働いた。
npm install -g npm-install-peers
このエラーの最も考えられる原因の1つは、package.jsonで古いバージョンを定義したことです。この問題を解決するには、package.jsonのバージョンをnpmが問題を訴えているバージョンと一致するように変更します。
完了したら、npm installを実行してください。
わかりましたので、私はこれを理解しようとして長い間苦労しました。あなたが他のすべての方法を使い果たしたときのために、これは nuclear オプションです..
完了しても問題が解決したら、実際のコードをこの新しいプロジェクトにインポートします。新しいバージョンの角度の原因によるコンパイルエラーを修正します。
それは私のためにそれを何をしたのか.. wtfを把握しようとしているの6時間対リワークの1時間は間違っていた。
今日利用可能です Angular 2 rc.7 、そして私は[email protected]
UNMET PEER DEPENDENCYに関して同様の問題を抱えていました。
あなたが、私のように、単に@angular/...rc.6
を@angular/...rc.7
に置き換えたなら - それは十分ではありません。たとえば、@angular/router
にはrc.6
バージョンがありません。
この場合は、 package.json in クイックスタート を参照してください。
この回答はすべての場合に当てはまるわけではありませんが、単にnpm install
と入力してもエラーを解決できない場合は、この手順が役立つ場合があります。
このエラーが発生したとしましょう。
UNMET PEER DEPENDENCY [email protected]
npm WARN [email protected] requires a peer of packageA@^3.1.0 but none was installed.
つまり、packageAのバージョン4.2.0をインストールしましたが、[email protected]にはバージョン3.x.xのpakageAが必要です。 ( ^ の説明)
そのため、packageAを3.x.xにダウングレードすることでこのエラーを解決できますが、通常はパッケージをダウングレードしたくないでしょう。
幸いなことに、場合によっては、packageBがpackageAに追いついておらず、packageBのメンテナがpackageAのピア依存関係を4.x.xに引き上げようと努力しています。
その場合は、npmまたはgithubにpackageAのバージョン4.2.0を必要とするより新しいバージョンのpackageBがあるかどうかを確認できます。
多くの場合、あなたはこのような依存関係についての大きな変化を見つけることができます。
packageB v4.0.0-beta.0
BREAKING CHANGE
package: requires packageA >= v4.0.0
リリースページに何も見つからない場合は、issueページに移動し、peer
のようなキーワードでissueを検索してください。あなたは役に立つ情報を見つけるかもしれません。
この時点で、2つの選択肢があります。
1)希望のバージョンにアップグレードする
2)しばらくの間エラーを残して、安定版がリリースされるまで待ちます。
オプション1を選択した場合:
多くの場合、このバージョンにはlatest
tag がないため、安定していません。そのため、このアップデートで何が変更されたのかをチェックし、何かが壊れないようにする必要があります。
オプション2を選択した場合:
バージョン3からバージョン4へのpakageAのアップグレードが簡単な場合、またはpakageBのメンテナがまだバージョン4のpakageAをテストしていなくても問題ないと言っている場合は、エラーを残すことを検討できます。
どちらの場合も、それが何も壊れないかどうかを徹底的にテストすることが最善です。
最後に、なぜあなたが手動でそのようなことをしなければならないのか知りたいのなら、 このリンクはよく説明しています。
与えられた答えはいつもうまくいかない。それでも問題が解決しない場合package.json
でも正しいシンボルを使っていることを確認してください。これはその頭痛を直すために非常に重要です。例えば:
warning " > @angular/[email protected]" has incorrect peer dependency "TypeScript@>=2.4.2 <2.7".
warning " > [email protected]" has incorrect peer dependency "TypeScript@>=2.4.2 <2.6".
それで、私のTypeScriptは2.4.2と2.6の間にある必要がありますか?
そこで私はTypeScriptライブラリを"TypeScript": "^2.7"
の使用から"TypeScript": "^2.5"
の使用に変更しました。正しいようですか?
違う。
^
は、あなたが"TypeScript": "2.5"
または"2.6"
または"2.7"
などを使ってnpmで大丈夫であることを意味します...
^
と~
の意味を知りたい場合は、次を参照してください。 package.jsonのチルダ(〜)とキャレット(^)の違いは何ですか?
また、パッケージが存在することを確認する必要があります。おそらくパッケージ番号を調べる"TypeScript": "2.5.9"
はありません。本当に安全であるためには、~
または^
を、意味を読みたくない場合は削除してください。