Nvm-windows: Das globale npm-Verzeichnis wird nicht in die Umgebungsvariable eingefügt

Erstellt am 11. Sept. 2018  ·  7Kommentare  ·  Quelle: coreybutler/nvm-windows

Wenn dies eine Frage zur Verwendung von NVM4W ist, verwenden Sie stattdessen

Wenn dies ein Problem mit Antivirus ist, stellen Sie sicher, dass Sie zuerst die vorhandenen Probleme durchsuchen.

Meine Umgebung

  • [ ] Windows 7 oder niedriger (wegen EOL nicht wirklich unterstützt - siehe Wiki für Details)
  • [ ] Windows 8
  • [ ] Windows 8.1
  • [x] Windows 10
  • [ ] Windows 10 IoT-Core
  • [ ] Windows Server 2012
  • [ ] Windows Server 2012 R2
  • [ ] Windows Server 2016

  • [ ] Meine Windows-Installation ist nicht englisch.

Ich verwende die NVM4W-Version:

  • [ x] 1,1.7
  • [ ] 1.1.6
  • [ ] 1.1.5
  • [ ] 1.1.4
  • [ ] 1.1.3
  • [ ] 1.1.2
  • [ ] 1.1.1
  • [ ] Älter
  • [ ] Sonstiges (bitte angeben)

Ich habe schon...

  • [x ] Lesen Sie die README-Datei, um sich über npm-Gotchas und Antivirus-Probleme zu informieren.
  • [x ] hat das Wiki überprüft, um sicherzustellen, dass mein Problem nicht bereits gelöst wurde.
  • [x ] hat bestätigt, dass ich ein Konto mit Administratorrechten verwende.
  • [x ] hat die Issues (offen und geschlossen) durchsucht, um sicherzustellen, dass es sich nicht um ein Duplikat handelt.
  • [x ] stellte sicher, dass dies keine Frage zur Verwendung von NVM für Windows ist, da gitter für Fragen und Kommentare verwendet wird.

Mein Problem bezieht sich auf (kreuzen Sie nur die zutreffenden an):

  • [ ] settings.txt
  • [ ] Proxy-Unterstützung (Haben Sie Version 1.1.0+ ausprobiert?)
  • [ ] 32- oder 64-Bit-Unterstützung (Haben Sie Version 1.1.3+ ausprobiert?)
  • [ ] Zeichen-Escape (Haben Sie Version 1.1.6+ ausprobiert?)
  • [ ] Eine Standard-Shell-Umgebung (Terminal/Powershell)
  • [ ] Eine nicht standardmäßige Shell-Umgebung (Cmder, Hyper, Cygwin, git)

Erwartetes Verhalten

Nachdem ich nvm-windows installiert habe, sollte die C:UsersadminAppDataRoamingnpm, die alle meine globalen Befehle enthält, der PATH-Variablen hinzugefügt werden, aber dies ist nicht der Fall.

Tatsächliches Verhalten

Dies ist nicht - ich muss dieses Verzeichnis manuell zur PATH-Variablen hinzufügen

Schritte zum Reproduzieren des Problems:

nvm-windows installieren
npm install -g @angular/cli . ausführen
Powershell-Fenster schließen und erneut öffnen
führe "ng neues neues Projekt" aus
Es wird sagen "ng wird nicht erkannter Befehl"
Gehen Sie in die Umgebungsvariablen und fügen Sie "C:UsersadminAppDataRoamingnpm" zu PATH hinzu
Öffnen Sie ein weiteres Powershell-Fenster und führen Sie "ng new newProject" aus, es wird jetzt funktionieren

Hilfreichster Kommentar

Ich dachte, ich würde das oben Gesagte auf dem Laptop meines Kunden wiederholen

1) installierte die letzte Version des NVM4W-Installers (1.17.4)

2) Legen Sie die Proxy-URL fest

nvm proxy myclientproxy.com:xxxx

λ nvm install 8.12.0
Downloading node.js version 8.12.0 (64-bit)...
Complete
Downloading npm version 6.4.1... Download failed. Rolling Back.
Rollback failed. remove C:\Users\Daniel\AppData\Roaming\nvm\temp\npm-v6.4.1.zip: The process cannot access the file because it is being used by another process.
Could not download npm for node v8.12.0.
Please visit https://github.com/npm/cli/releases/tag/v6.4.1 to download npm.
It should be extracted to C:\Users\Daniel\AppData\Roaming\nvm\v8.12.0

Alle Ratschläge zur Behebung dieses Problems oder zur Durchführung einer manuellen Installation.

Alle 7 Kommentare

Vielleicht verstehe ich das falsch, wie nvm-windows funktionieren soll.

Kann jemand klarstellen, ob nvm-windows meine globalen npm-Pakete (zB Garn, ng) in c:usersadminappdataroamingnvm ablegen soll?

Auf meinem Computer sieht es so aus, dass die globalen Pakete in c:usersadminappdataroamingnpm abgelegt werden - nur die Knotenversionen werden in c:usersadminappdataroamingnvm abgelegt.

Aus diesem Grund funktionieren die globalen Befehle erst, wenn ich c:usersadminappdataroamingnpm in SYSTEM PATH hinzufüge.

Kann jemand klarstellen, ob nvm-windows meine globalen npm-Pakete (zB Garn, ng) in c:usersadminappdataroamingnvm ablegen soll?

Nein ist es nicht. Das ist das richtige Verhalten, das Sie erleben. Außerdem fügt nvm c:\users\admin\appdata\roaming\npm zum PATH hinzu, wenn Sie nicht auf npm zugreifen können.

Kann jemand klarstellen, ob nvm-windows meine globalen npm-Pakete (zB Garn, ng) in c:usersadminappdataroamingnvm ablegen soll?

Nein ist es nicht. Das ist das richtige Verhalten, das Sie erleben. Außerdem fügt nvm c:\users\admin\appdata\roaming\npm zum PATH hinzu, wenn Sie nicht auf npm zugreifen können.

Okay, das Verzeichnis c:\users\admin\appdata\roaming\npm für mich nicht zu PATH hinzugefügt. Ich musste dies nachträglich manuell hinzufügen.

Es hat NVM_HOME hinzugefügt, das mit c:usersadminappdataroamingnvm verknüpft ist und
NVM_SYMLINK, der mit c:Programmdateiennodejs verknüpft ist

Ich konnte auf npm zugreifen, weil c:program filesnodejs auf meine aktuelle Version des Knotens zeigte (z. B. C:UsersadminAppDataRoamingnvmv10.10.0)

Ich habe dieses Problem bekommen, aber festgestellt, dass dies nicht so erfolgreich war
nvm install 8.12.0

Node.js-Version 8.12.0 (64-Bit) wird heruntergeladen...
Vollständig
npm-Version 6.4.1 wird heruntergeladen... Download - fehlgeschlagen. Zurück rollen.

Ich denke, das erklärt den nicht gesetzten Pfad. Wie auch immer, nvm 1.17 installiert und das obige erfolgreich ausgeführt - es fügt diese env vars hinzu, die an den Pfad env var angehängt werden

NVM_HOME=C:\Users\danie\AppData\Roaming\nvm
NVM_SYMLINK=C:\Program Files\nodejs

npm wird vom Pfad gesehen und ich bekomme den in diesem Thread erwähnten Fehler nicht mehr
λ npm-Version{ npm: '6.4.1',.....

Ich dachte, ich würde das oben Gesagte auf dem Laptop meines Kunden wiederholen

1) installierte die letzte Version des NVM4W-Installers (1.17.4)

2) Legen Sie die Proxy-URL fest

nvm proxy myclientproxy.com:xxxx

λ nvm install 8.12.0
Downloading node.js version 8.12.0 (64-bit)...
Complete
Downloading npm version 6.4.1... Download failed. Rolling Back.
Rollback failed. remove C:\Users\Daniel\AppData\Roaming\nvm\temp\npm-v6.4.1.zip: The process cannot access the file because it is being used by another process.
Could not download npm for node v8.12.0.
Please visit https://github.com/npm/cli/releases/tag/v6.4.1 to download npm.
It should be extracted to C:\Users\Daniel\AppData\Roaming\nvm\v8.12.0

Alle Ratschläge zur Behebung dieses Problems oder zur Durchführung einer manuellen Installation.

Ich hatte Nodist vor nvm-windows installiert. Es hinterließ eine .npmrc Datei im Home-Verzeichnis ( %userprofile% ). Ich musste es entfernen und den Befehl nvm use erneut versuchen, um alles richtig zu machen.

Ich weiß nicht, ob in meinem Pfad etwas falsch war oder fehlte, aber in Bezug auf die Lösung von .npmrc Dateien (an zwei Stellen), die gelöscht und ein npm install buzzphraze -g versucht wurden npm install buzzphraze -g funktioniert und das Paket an der richtigen Stelle installiert. Zuvor war es irrsinnig, eine c\blar\mcblar\ Ordnerstruktur in meinem Laufwerksstamm (in Windows) zu erstellen.

Bearbeiten: unter Windows 7. Für die die Installation der Extras fehlschlägt (und ich durch manuelles Wrangling schokoladig installiert wurde), weil es für Powershell 1 codiert ist, aber jetzt für die Installation von TLS2 und Powershell 5 benötigt wird. Ich frage mich, ob die Extras-Installationsfehler .npmrc Dateien an den falschen Stellen erstellt haben.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen