Nvm-windows: Kein Symlink erstellt nach `nvm use`

Erstellt am 22. Apr. 2015  ·  24Kommentare  ·  Quelle: coreybutler/nvm-windows

C:\joyee\study>nvm install 0.10.38
C:\joyee\study>nvm use 0.10.38
C:\joyee\study>node -v

Und ich habe

'node' is not recognized as an internal or external command, operable program or batch file.

Also ging ich nach %NVM_SYMLINK% , es gab nur einen node_modules Ordner. Ich durchsuchte die Festplatte nach node.exe und fand meinen Knoten unter C:\Users\Joyee\AppData\Roaming\nvm\version installiert, aber es gab nirgendwo sonst irgendwelche Symbollinks. Ich habe versucht, cmd als Administrator auszuführen, aber es hat nicht geholfen.

Ich verwende Windows 8 64bit und habe den Knoten vor der Installation von nvm deinstalliert. Ich habe gerade nvm installiert, also ist das Installationsprogramm das neueste.

Edit: Noch etwas Seltsames:

C:\joyee\study>nvm list            

    0.12.2                         
    0.10.38                        

C:\joyee\study>nvm use 0.10.38     
Now using node v0.10.38 (64-bit)   

C:\joyee\study>nvm list            

    0.12.2                         
    0.10.38                        

Es gibt keine "in Gebrauch"-Versionen.

Installer Issue

Hilfreichster Kommentar

Das ist mir passiert, als ein Kollege nvm installierte, ohne zuerst node zu deinstallieren .

Wenn Sie den Befehl nvm , stellen Sie sicher, dass Sie nvm on ausführen.

Wir haben festgestellt, dass nvm nicht selbst aktiviert, wenn es eine frühere Version von node auf dem Computer erkennt, aber seinen Status auf off .

Alle 24 Kommentare

Habe heute den gleichen Fehler festgestellt.

Behoben: Löschen des nachgestellten cmd als Administrator und Ausführen von nvm use [version]

Das Seltsame ist, dass ich keinen nachgestellten nodejs-Ordner hatte, nachdem ich ihn deinstalliert habe (mit allem überprüft) und ich habe versucht, cmd als Administrator auszuführen.

Das ist mir passiert, als ein Kollege nvm installierte, ohne zuerst node zu deinstallieren .

Wenn Sie den Befehl nvm , stellen Sie sicher, dass Sie nvm on ausführen.

Wir haben festgestellt, dass nvm nicht selbst aktiviert, wenn es eine frühere Version von node auf dem Computer erkennt, aber seinen Status auf off .

Das gleiche Problem, das Löschen des _contents_ des nodejs-Ordners aus meiner vorherigen Knoteninstallation, hat es behoben. Ich nehme an, es kann nur etwas daran sein, das mangels Erlaubnis fehlgeschlagen ist?

Wir haben gerade die letzten zwei Stunden mit nvm gekämpft und es stellte sich heraus, dass wir nur nvm on ausführen mussten. @whitneyit - danke, dass du uns zum Laufen gebracht hast!!!

@metasean Kein Problem, Kumpel. freut mich, dass ich helfen konnte :smile:

Ich habe das gleiche Problem. nvm kann jede Node-Version herunterladen und installieren, aber ich kann alle nvm on und nvm use X.X.X tun, es funktioniert nicht.

Ich habe manuell versucht, den Befehl zum Erstellen eines Symlinks mit Administratorrechten auszuführen:
"C:\Windows\SysWOW64\cmd.exe" /C mklink /D C:\bin\nodejs C:\bin\nvm\v0.12.0

Das System sagte: You do not have sufficient privilege to perform this operation.

Folgen Sie diesem Link: http://superuser.com/a/125981
Ich ging zum Interface Local Security Policy:
Security settings > Local Policies > User Right Assignement > Create Symbolic links
Ich bin nicht in der Liste und kann mich nicht hinzufügen. Es scheint, dass die Standardsicherheitsrichtlinien in meinem Unternehmen es mir nicht erlauben, einen symbolischen Link zu erstellen. Ich warte jetzt darauf, dass die IT mich auf die weiße Liste setzt...

Verpasse ich etwas?
Vielen Dank!

@Kylir; Wenn Sie die Sicherheitsrichtlinien nicht ändern können, versuchen Sie stattdessen, eine Eingabeaufforderung mit erhöhten Rechten zu starten (auch bekannt als: "Start" > geben Sie "cmd" ein > klicken Sie mit der rechten Maustaste und "als Administrator ausführen").

FWIW, für mich hat @whitneyit den Vorschlag " nvm on ausführen " für mich
(Obwohl ich Node in Add/Remove-Programmen vor der Installation von nvm deinstalliert hatte, scheint der nodejs-Ordner immer noch unter Programmdateien vorhanden zu sein)

Danke @whitneyit . Du hast meinen Tag gerettet! Ich habe viele Stunden damit verbracht, das Problem zu beheben, und Ihre Lösung war fast magisch!

Ich muss den vorhandenen nodejs-Ordner "C:\Program Filesnodejs" entfernen und einen Symlink manuell erstellen, damit es funktioniert. In meinem Fall lautet der Befehl:
mklink /j "C:\Program Filesnodejs" "C:\Users\hungcao\AppData\Roamingnvm\v6.7.0"

update: Ab diesem Beitrag über die Verwendung von Symlink gibt es eine Einschränkung, die Sie beachten müssen: "Wenn Sie ein Verzeichnis mit Symlinks verknüpfen, ist es wichtig, dass es kein Verzeichnis oder keine Datei mit demselben Namen gibt". Obwohl wir die alte nodejs-Installation deinstallieren, wenn der Ordner noch vorhanden ist, kann nvm gestoppt werden, um einen Symlink zu erstellen. Das Schlimme ist, dass nvm keine Fehler oder Warnungen anzeigt

Gleicher Fehler:

  • Ordner C:\Program Filesnodejs löschen
  • nvm verwenden
  • Knoten -v

Gleiches Problem bei meinem Win 10 Home 64 Bit

Löschen des Ordners hat es behoben

$ node -v
v4.7.2

aber ich habe ein paar probleme mit npm:

$ npm -v
module.js:327
    throw err;
    ^

Error: Cannot find module 'C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js'
    at Function.Module._resolveFilename (module.js:325:15)
    at Function.Module._load (module.js:276:25)
    at Function.Module.runMain (module.js:441:10)
    at startup (node.js:139:18)
    at node.js:990:3
module.js:327
    throw err;
    ^

Error: Cannot find module 'C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js'
    at Function.Module._resolveFilename (module.js:325:15)
    at Function.Module._load (module.js:276:25)
    at Function.Module.runMain (module.js:441:10)
    at startup (node.js:139:18)
    at node.js:990:3

Der Ordner node_modules ist leer.

Offensichtlich funktioniert npm install nicht.

BEARBEITEN: Ich habe es gelöst, indem ich die ZIP-Datei der Version von Knoten 4.7.2 manuell heruntergeladen und den Ordner node_modules in C:\Program Filesnodejsnode_modules abgelegt habe

Das bedeutet, dass ich jedes Mal, wenn ich eine Knotenversion installiere, den Ordner node_modules für diese Knotenversion manuell herunterladen sollte. Das ist unhöflich!

Vielen Dank dafür. Ich bin auf das gleiche Problem gestoßen, habe versucht, den Symlink dort zu erstellen, wo sich meine alte Knoteninstallation befand, und ich wusste nicht, dass das Deinstallationsprogramm einige Python-Abhängigkeiten zurückgelassen hatte ...

Ich muss keine alte Knoteninstallation entfernen, die als Administrator ausgeführt wird, aber ich habe immer noch das gleiche Problem wie oben. Ich habe es in einem nicht standardmäßigen Verzeichnis gespeichert, aber soweit ich das beurteilen kann, ist der Symlink in Ordnung.

# created by me
λ echo %PATH% | tr ; '\n'
D:\Program Files HDD\cmder\bin
D:\Program Files HDD\cmder\vendor\git-for-windows\cmd
D:\Program Files HDD\cmder\vendor\conemu-maximus5\ConEmu\Scripts
D:\Program Files HDD\cmder\vendor\conemu-maximus5
D:\Program Files HDD\cmder\vendor\conemu-maximus5\ConEmu
E:\Programs\nvm
E:\Programs\nvm # assuming this is coming from NVM_SYMLINK and NVM_HOME
D:\Program Files HDD\cmder\vendor\git-for-windows\usr\bin
D:\Program Files HDD\cmder\vendor\git-for-windows\usr\share\vim\vim74
D:\Program Files HDD\cmder\

image

@astoellis - Ich weiß, dass es v6.9.5 verwendet, aber Sie können nvm use 6.9.5 trotzdem versuchen. Ich vermute, Ihr Problem könnte mit cmder zusammenhängen... Ich habe in letzter Zeit einige Probleme mit cmder gesehen. Wenn dies nicht funktioniert, versuchen Sie es mit einem einfachen Terminalfenster, um festzustellen, ob es sich um nvm4w oder cmder handelt.

Danke @coreybutler das werde ich gleich

Ja, du warst auf der 💰 . Verdammt cmder.

Ich habe dieses Problem gelöst, indem ich alle nvm-, node.js- und npm-bezogenen Dinge deinstalliert habe, dann nvm neu installiert habe, 'nvm on' ausgeführt und node installiert habe, jetzt ist es in Ordnung

Verwenden von cmd.exe zum Ausführen von nvm use <version> anstelle von git bash usw.

Wenn wir einen Pfad im Setup auswählen, der offensichtlich existiert, aber eigentlich für Symlink sollte es nicht notwendig sein, den nodejs-Ordner zu löschen und nvm erneut zu verwenden. Ich habe Schritte zur

Hatte den Deinstallationsknoten in Windows über die .msi-Datei installiert.
Verwenden Sie nvm, um die Knotenversion zu installieren
nvm verwenden -version
funktioniert gut.
in der Lage, den Knoten -v . auszuführen

aber npm funktioniert nicht
'npm' wird nicht als interner oder externer Befehl erkannt,
lauffähiges Programm oder Batch-Datei.

Etwas verwandtes Problem - Falls Sie einen Ordner angeben - der den Symlink enthält - der nicht existiert, scheint nvm zu funktionieren, schlägt aber stillschweigend fehl. Wenn Sie also zB _c:\devnodejs_nvm_ angeben, innerhalb dessen der _nodejs_-Link erstellt wird. Sie müssen den Ordner _nodejs_nvm_ erstellen, nvm wird dies nicht für Sie tun. Wenn Sie nvm nicht erstellen, schlägt es stumm fehl

Ich habe das gleiche Problem.

  • Löschen Sie alle Dinge, die mit nodejs und npm zusammenhängen
  • installierte nvm-setup.exe
  • öffnete eine neue Admin-Eingabeaufforderung
  • nvm on
  • nvm list nichts zurückgegeben
  • nvm install latest
  • nvm install 7.7.1
  • nvm use 10.0.0 x64 listet beide Versionsnummern auf, aber keine ist ausgewählt
  • nvm use 7.7.1 x64 listet beide Versionsnummern auf, aber keine ist ausgewählt
  • node -v gibt 'Knoten wird nicht als interner...'
  • nvm arch kehrt zurück
    Systemstandard: 64-Bit
    Derzeit konfiguriert: -bit

  • nvm arch 64 ändert daran nichts

Ich habe überprüft, ob beide Pfade in Systemvariablen vorhanden sind. Ich habe diesen Vorgang ein paar Mal versucht und jedes Mal überprüft, dass keine Nodejs- oder npm-Ordner mehr vorhanden sind, bevor ich nvm installiert habe.

Irgendwelche Ideen?

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen