it-swarm.com.de

Wie löse ich die npm UNMET PEER DEPENDENCY-Warnung?

Ich bin unter Windows 10, mit Node 5.6.0 und npm 3.6.0. Ich versuche, wink-material und mdi in meinem Arbeitsordner zu installieren. npm installiere winkel-material mdi error mit:

+-- [email protected]

+-- UNMET PEER DEPENDENCY [email protected]^1.5.0

+-- UNMET PEER DEPENDENCY [email protected]^1.5.0

+-- [email protected]

+-- UNMET PEER DEPENDENCY [email protected]^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
[email protected]^1.5.0 but none was installed. 

npm WARN [email protected] requires a peer of [email protected]^1.5.0
but none was installed. 

npm WARN [email protected] requires a peer of
[email protected]^1.5.0 but none was installed.

Wie kann ich das beheben, um AngularJS-Material und MDI zu installieren?

166
Reza

npm installiert keine Peer-Abhängigkeiten mehr. Sie müssen sie manuell installieren. Führen Sie einfach einen npm install für die erforderlichen Deps aus und versuchen Sie dann, den Hauptcode erneut zu installieren.


Antwort auf Kommentar: 

es ist richtig in dieser Nachricht, es sagt, welche Abstände Sie vermissen

UNMET PEER DEPENDENCY [email protected]^1.5.0 +-- 
UNMET PEER DEPENDENCY [email protected]^1.5.0 +-- [email protected] +
UNMET PEER DEPENDENCY [email protected]^1.5.0 `-- [email protected]` 

Sie müssen also npm install angular angular-animate angular-aria angular-material angular-messages mdi

160
Datsik

UNMET PEER DEPENDENCY-Fehler wird ausgelöst, wenn die in der package.json-Datei angegebenen Abhängigkeiten eines oder mehrerer Module nicht erfüllt sind. .__ Überprüfen Sie die Warnungen sorgfältig und aktualisieren Sie die package.json-Datei mit den korrekten Versionen der Abhängigkeiten.

Dann renne

rm -rf node_modules/
npm cache clean
npm install

Dadurch werden alle erforderlichen Abhängigkeiten korrekt installiert.

57
JayKrish

In meinem Fall waren bereits alle Abhängigkeiten vorhanden. Bitte aktualisieren SieNPMin diesem Fall, da er möglicherweise abgestürzt ist. Es hat mein Problem gelöst.

npm install -g npm
20
Anuj Sharma

npm-install-peers arbeitete für mich.

npm install -g npm-install-peers
14
alexoviedo999

Eine der möglichen Ursachen für diesen Fehler könnte darin bestehen, dass Sie eine ältere Version in package.json definiert haben. Um dieses Problem zu lösen, ändern Sie die Versionen in package.json, damit die npm sich beschweren.

Führen Sie anschließend npm install und voila !! aus. 

5
Thomas Mwania

Ok, also habe ich lange versucht, das herauszufinden. Hier ist die Option nuclear, wenn Sie alle anderen Möglichkeiten ausgeschöpft haben. 

  • Erstellen Sie einen neuen Ordner auf Ihrem PC.
  • Laden Sie eine brandneue Installation von angle herunter - ich habe dieses Handbuch verwendet: https://coursetro.com/posts/code/55/How-to-Install-an-Angular-4-App
  • Führen Sie es aus, stellen Sie sicher, dass es funktioniert
  • Dann installieren Sie Ihre Abhängigkeiten nacheinander aus Ihrer package.json-Datei
  • Führen Sie es nach jeder Installation aus

Wenn Sie fertig sind und immer noch funktionieren, importieren Sie Ihren aktuellen Code in dieses neue Projekt. Beheben Sie etwaige Kompilierungsfehler der neueren Version der Winkelursachen. 

Das war es, was es für mich getan hat. 1 Stunde Nacharbeit vs. 6 Stunden Versuch, herauszufinden, dass WTF falsch war. Ich wünschte, ich hätte es so gemacht, um zu beginnen.

3
user230910

Heute verfügbar Angular 2 rc.7, und ich hatte ein ähnliches Problem mit [email protected] UNMET PEER DEPENDENCY.

Wenn Sie wie ich einfach @angular/...rc.6 durch @angular/...rc.7 ersetzt haben, reicht das nicht aus. Beispielsweise hat @angular/router keine rc.6-Version.

In diesem Fall überprüfen Sie bitte package.json in Schnellstart.

2
ktretyak

Diese Antwort gilt nicht in allen Fällen. Wenn Sie den Fehler jedoch nicht einfach durch Eingabe von npm install Beheben können, können diese Schritte hilfreich sein.

Angenommen, Sie haben diesen Fehler erhalten.

UNMET PEER DEPENDENCY [email protected]

npm WARN [email protected] requires a peer of [email protected]^3.1.0 but none was installed.

Dies bedeutet, dass Sie Version 4.2.0 von packageA installiert haben, aber für [email protected] ist Version 3.x.x von pakageA erforderlich. ( Erklärung von ^ )

Sie können diesen Fehler beheben, indem Sie Paket A auf 3.x.x herabstufen. In der Regel möchten Sie das Paket jedoch nicht herabstufen.
Eine gute Nachricht ist, dass in einigen Fällen packageB einfach nicht mit packageA Schritt hält und der Betreuer von packageB sich bemüht, die Peer-Abhängigkeit von packageA auf 4.x.x zu erhöhen.
In diesem Fall können Sie überprüfen, ob eine höhere Version von packageB vorhanden ist, für die Version 4.2.0 von packageA in npm oder github erforderlich ist. 

Gehen Sie beispielsweise zur Freigabeseite  enter image description here

Oft kann es zu Veränderungen in der Abhängigkeit dieser Art kommen.

packageB v4.0.0-beta.0

BREAKING CHANGE
package: requires packageA >= v4.0.0

Wenn Sie auf der Freigabeseite nichts finden, wechseln Sie zur Ausgabeseite und suchen Sie das Problem nach einem Schlüsselwort wie peer. Sie können nützliche Informationen finden.

 enter image description here

An diesem Punkt haben Sie zwei Möglichkeiten. 

1) Aktualisieren Sie auf die gewünschte Version
2) Lassen Sie den Fehler vorerst ab und warten Sie, bis die stabile Version freigegeben ist.

Wenn Sie Option1 wählen:
In vielen Fällen hat die Version latesttag nicht stabil. Sie müssen also überprüfen, was sich in diesem Update geändert hat, und sicherstellen, dass nichts kaputt geht. 

Wenn Sie Option2 wählen:
Wenn das Upgrade von pakageA von Version 3 auf Version 4 trivial ist, oder wenn der Betreuer von pakageB Version 4 von pakageA noch nicht getestet hat, aber sagt, dass dies kein Problem sein sollte, sollten Sie den Fehler möglicherweise lassen.

In beiden Fällen ist es am besten, gründlich zu testen, ob nichts kaputt geht. 

Wenn Sie wissen wollen, warum Sie so etwas manuell machen müssen, erklärt dieser Link.

0
toshi

Die gegebene Antwort wird nicht immer funktionieren. Wenn das Problem nicht behoben wird. Stellen Sie sicher, dass Sie auch das richtige Symbol in Ihrem package.json verwenden. Dies ist sehr wichtig, um diese Kopfschmerzen zu beheben. Zum Beispiel:

warning " > @angular/[email protected]" has incorrect peer dependency "[email protected]>=2.4.2 <2.7".
warning " > [email protected]" has incorrect peer dependency "[email protected]>=2.4.2 <2.6".

Mein TypeScript muss also zwischen 2.4.2 und 2.6 liegen, oder?

Also habe ich meine TypeScript-Bibliothek von "TypeScript": "^2.7" in "TypeScript": "^2.5" geändert. Scheint richtig? 

Falsch. 

Der ^ bedeutet, dass Sie mit npm zufrieden sind und "TypeScript": "2.5" oder "2.6" oder "2.7" usw. verwenden. 

Wenn Sie wissen möchten, was der ^ und ~ bedeutet, lesen Sie: Was ist der Unterschied zwischen Tilde (~) und Caret (^) in package.json?

Sie müssen auch sicherstellen, dass das Paket vorhanden ist. Möglicherweise gibt es keinen "TypeScript": "2.5.9" nach den Paketnummern. Um wirklich sicher zu sein, entfernen Sie einfach den ~ oder den ^, wenn Sie nicht lesen möchten, was sie bedeuten.

0
Samuel Thompson