wake-up-neo.com

Wie kann ich die Version von npm mit nvm ändern?

Ich habe NVM verwendet, um die neuesten Versionen von nodeJS für meine Knotenarbeit zu installieren. Es funktioniert perfekt, wenn Sie separate Versionen installieren und zwischen ihnen wechseln. Es installiert auch die neueste Version von NPM zusammen mit dem Knoten binär in jedem lokalen Ordner .../bin. Es scheint jedoch keine Möglichkeit zu geben, die Version von NPM zu wechseln, die ich verwende (oder zumindest kann ich es nicht herausfinden). 

Die einzige Lösung, die ich mir vorstellen kann, ist, die Binärdatei zu löschen, auf die sie standardmäßig gesetzt ist (dh der NPM, der installiert wurde, als ich zum ersten Mal einen Knoten mit NVM installierte) und stattdessen die neueste NPM-Binärdatei zu verwenden. Ich frage mich jedoch, ob es bessere Wege gibt, dies zu tun.

165
thisissami

Über drei Jahre, nachdem diese Frage zum ersten Mal gestellt wurde, scheint die Antwort jetzt viel einfacher zu sein. Aktualisieren Sie einfach die von nvm installierte Version, die sich in ~/.nvm/versions/node/[your-version]/lib/node_modules/npm befindet.

Ich habe gerade Knoten 4.2.2 installiert, der mit npm 2.14.7 geliefert wird, aber ich möchte npm 3 verwenden. Also habe ich:

cd ~/.nvm/versions/node/v4.2.2/lib
npm install npm

Einfach!

Und ja, dies sollte für jedes Modul funktionieren, nicht nur für npm, das für eine bestimmte Version des Knotens "global" sein soll. 


BEARBEITEN 1: In der neuesten Version ist npm -g intelligent und installiert Module in den obigen Pfad anstelle des globalen Systempfads.


EDIT 2, weitere zwei Jahre und sechs Node-Versionen später: Wie in eine neuere Antwort erwähnt, gibt es jetzt einen Befehl dafür:

nvm hat jetzt einen Befehl zum Aktualisieren von npm. Es ist nvm install-latest-npm oder nvm install --latest-npm.

nvm install-latest-npm: Versuch, ein Upgrade auf die aktuell funktionierende npm der aktuellen Knotenversion durchzuführen

nvm install --latest-npm: Versuchen Sie nach der Installation, ein Upgrade auf die aktuellste funktionierende npm der angegebenen Knotenversion durchzuführen

Danke @philraj für den Hinweis in einem Kommentar.

256
lawrence

nvm behandelt npm nicht.

Wenn Sie also den Knoten 0.4.x (von dem viele Pakete noch abhängig sind) installieren und NPM verwenden möchten, können Sie npm 1.0.x verwenden.

Installieren Sie den Knoten 0.6.x (der mit npm 1.1.x geliefert wird) und installieren Sie nvm mit npm:

npm install nvm
. ~/nvm/nvm.sh

Installieren Sie Knoten 0.4.x mit nvm:

nvm install v0.4.12
nvm use v0.4.12

Installieren Sie npm mit install.sh (beachten Sie den Parameter -L, um Umleitungen zu folgen):

curl -L https://npmjs.org/install.sh | sh

Dadurch wird Knoten 0.4.12 erkannt und npm 1.0.106 im Ordner ~/nvm/v0.4.12/lib/node_modules installiert und ein Symlink für nvm erstellt

~/nvm/v0.4.12/bin/npm -> ../lib/node_modules/npm/bin/npm-cli.js

Wenn Sie versuchen, npm auszuführen, wird immer noch ein Fehler angezeigt. Wenn Sie jedoch nvm use v0.4.12 erneut ausführen, sollte es jetzt funktionieren.

40
fijiaaron

nvm hat jetzt einen Befehl zum Aktualisieren von npm. Es ist nvm install-latest-npm oder npm install --latest-npm.

20
samlandfried

Das Ändern der npm-Versionen auf Linux-basierten Betriebssystemen ist noch kein einfacher Befehlsprozess. Ich habe folgendes getan, um zur älteren Version von npm zurückzukehren. Dies sollte funktionieren, damit jede Version von npm funktioniert. Installieren Sie zuerst die Version von npm, die Sie verwenden möchten:

Sudo npm install -g [email protected]

Entfernen Sie den Sym-Link in/usr/local/bin /

Sudo rm /usr/local/bin/npm

Erstellen Sie den Sym-Link mit der gewünschten Version von npm neu, die Sie installiert haben

Sudo ln -s /usr/bin/[email protected] /usr/local/bin/npm
16
Arun Reddy
npm install [email protected] -g
npm install [email protected] -g
16
Ocko

Beim Betrachten von www.npmjs.com/install.sh habe ich festgestellt, dass es eine Möglichkeit gibt, eine bestimmte Version zu installieren, indem eine Umgebungsvariable gesetzt wird

export npm_install="2.14.14"

Führen Sie dann das Download-Skript wie unter npmjs.com beschrieben aus:

curl -L https://www.npmjs.com/install.sh | sh

Wenn Sie die Einstellung der npm_install -Variable nicht angeben, wird die Version installiert, die sie als latest markiert haben.

8
jim

Führen Sie in Windows Ihr Terminal als Administrator aus (falls es Probleme mit der Berechtigung gibt wie ich). Verwenden Sie dann eine bestimmte Knotenversion (z. B. 7.8.0) von

nvm use 7.8.0

aktualisieren Sie dann Ihre NPM auf die gewünschte Version von

npm install -g [email protected]
4
adnan2nd

Ich bin unter Windows und ich konnte nichts davon zum Laufen bekommen. Ich bekam immer Fehler, dass Dateien im Weg waren. Das hat aber funktioniert:

cd %APPDATA%\nvm\v8.10.0           # or whatever version you're using
mv npm npm-old
mv npm.cmd npm-old.cmd
cd node_modules\
mv npm npm-old
cd npm-old\bin
node npm-cli.js i -g [email protected]

Und boom, ich bin wieder im Geschäft.

4

Was ist mit npm i -g npm? Haben Sie versucht, dies auch auszuführen?

Eine leichte Abweichung von den obigen Anweisungen hat für mich funktioniert. (MacOS Sierra 10.12.6)

npm install -g [email protected]
rm /usr/local/bin/npm
ln -s ~/.npm-packages/bin/npm /usr/local/bin/npm
npm --version
1
Nick Grealy

Das gleiche Problem hatte ich nach der Installation von nvm-windows auf der vorhandenen Knoteninstallation. Lösung war nur die Anweisungen zu befolgen:

Sie sollten auch den vorhandenen Installationspfad von npm löschen (z. B. "C:\Users\AppData\Roaming\npm"), damit der Installationspfad von nvm wird stattdessen korrekt verwendet.

Installation und Upgrades

0
MyTitle

NVM-Installation und -Nutzung unter Windows

Nachfolgend sind die Schritte für die NVM-Installation unter Windows aufgeführt:

NVM steht für Node Version Manager (Node-Versions-Manager), mit dessen Hilfe Sie die Node-Versionen für eine bestimmte Verwendung wechseln können. Außerdem kann der Benutzer mit mehreren Npm- und Node-Versionen arbeiten.

Installieren Sie das nvm-Setup. Verwenden Sie den Befehl "nvm list", um die Liste der installierten Knotenversionen zu überprüfen. Geben Sie "nvm use version number [6.9.3]" ein, um die Version zu wechseln. Für mehr Infos

  1. finden Sie hier die Node- und Npm-Version, die Sie verwenden möchten https://nodejs.org/en/download/releases/
  2. nvm use 8.11.4
  3. du hast schon die npm 5.6 (solide und gut)
0
Alvin Smith