So aktualisieren Sie npm


124

Ich versuche, mean.io Boilerplate zu installieren. Es schlägt beim Laufen fehl sudo npm install -g meanio@latest. Vor dem Fehlschlagen stellt es fest, dass es npm Version 1.4.x "will", während ich 1.2.18 installiert habe. Also habe ich versucht, npm auf den neuesten Stand zu bringen. verschiedene Wege. Das letzte davon war ...

ubuntu@ip-xxx-xx-xx-xxx:~$ sudo npm install -g npm
/usr/local/bin/npm -> /usr/local/lib/node_modules/npm/bin/npm-cli.js
npm@1.4.7 /usr/local/lib/node_modules/npm

ubuntu@ip-xxx-xx-xx-xxx:~$ npm --version
1.2.18

Warum wird immer noch Version 1.2.18 angezeigt, wenn ich gerade auf 1.4.7 aktualisiert habe?


12
Dosudo npm update npm -g
Tim

1
Wenn Sie die Verwendung eines nicht unterstützten PPA riskieren können, versuchen launchpad.net/~chris-lea/+archive/node.js
TeTeT

sudo npm install npm -g hat mir geholfen
thinklinux


Dies sollte auf Ask Ubuntu
Ulysse BN

Antworten:


189

Dadurch wird npm mit npm selbst aktualisiert :

sudo npm install npm -g

Wenn Sie nicht weiterkommen, versuchen Sie es sudo npm update npm -g. Alle Kredite gehen an Tim Castelijns. Ich habe es auf Ubuntu 14.04, npm 1.3.10 getestet


Beachten Sie, dass, wenn Sie nvm zum Verwalten mehrerer Versionen in Ihrer lokalen Entwicklungsumgebung verwenden , z. B. zu Testzwecken , alle installierten Versionen (aufgelistet von nvm ls) in ~ / .nvm sind, sodass Sie die systemweite Installation einfach weglassen (dh sudo weglassen):

npm install npm -g

DEBIAN ENTERPRISE

Betrachten Sie für eine vollständige Unternehmenspraxis nodeource.com :

curl -sL https://deb.nodesource.com/setup | sudo bash -

wie hier beschrieben .

ANDERES UNTERNEHMEN

Informationen zu Nicht-Debian-Distributionen finden Sie im Knoten- Github-Wiki https://github.com/joyent/node/wiki/installing-node.js-via-package-manager Download-Seite https://nodejs.org/en/download /.

Zum historischen Verständnis: Chis Lea behielt seine PPA bei, schloss sich aber jetzt mit Nodesource zusammen .


Ich würde empfehlen, ein PPA-Repository zu verwenden, damit der Ubuntu-Paketmanager die Updates zusammen mit allem anderen verwaltet.
Henry74

Auf Produktionsservern vielleicht ja. Aber auf dev möchten Sie wirklich garantieren, dass Sie Dinge direkt vom npm-Paketbetreuer erhalten, nicht vom PPA-Betreuer
Yauhen Yakimovich

Ich bin nicht einverstanden. Sie möchten nicht, dass sich dev von der Produktion unterscheidet, oder Sie werden auf Bereitstellungsprobleme für verschiedene Versionen stoßen.
Henry74

1
Je nachdem, wie paranoid Sie sind, kann es fraglich sein, Chis Leas PPA zu vertrauen. Es ist immer eine Entscheidung darüber möglich, wie viele der kritischen Abhängigkeiten im Projekt nur als lokale Kopie ausgelagert werden. Wenn Sie nicht in der Bank arbeiten, sondern ein Open-Source-Projekt durchführen, müssen Sie sich möglicherweise nicht einmal um eine Produktion kümmern :) Ich werde das Knoten-Wiki hier verlinken und nur alle Alternativen auflisten. Persönlich bin ich kein großer PPA- oder Github-Tag, wenn es um die Codeverteilung geht.
Yauhen Yakimovich

Sie müssen Chris 'PPA nicht verwenden. Verwenden Sie die offizielle aus der Knotenquelle.
Henry74

43

Wenn die Antwort von user3223763 nicht funktioniert, können Sie Folgendes versuchen:

sudo apt-get remove nodejs ^node-* nodejs-*
sudo apt-get autoremove
sudo apt-get clean
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install nodejs

Dann :

curl https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | sh

Öffnen Sie danach ein neues Terminal und überprüfen Sie die npm-Version:

npm --version

EDIT / UPDATE:

Heute ist die letzte NVM-Version:

https://raw.githubusercontent.com/creationix/nvm/v0.25.4/install.sh

Daher lautet der Befehl CURL: v0.25.4 anstelle von v0.13.1

curl https://raw.githubusercontent.com/creationix/nvm/v0.25.4/install.sh | sh

Sie können https://github.com/creationix/nvm/releases überprüfen , um die richtige Version für weitere Upgrades zu verwenden


3
user3223763 hat bei mir nicht funktioniert und npm auch nicht selbst aktualisiert. Vielen Dank, dass Sie Daniel
Hektorg87

3
Ich kann bestätigen, dass diese Methode dazu beigetragen hat, npm zu aktualisieren. Frühere Methoden hatten Bibliotheken nicht erfüllte Abhängigkeiten oder aktualisierten npm, aktualisierten jedoch nicht den Pfad / die Umgebung, um den neuen Speicherort zu verwenden.
Will824

Dies funktionierte auch für mich, die anderen Antworten waren nicht auf Ubuntu 14.0.4
islanddave

1
Dies funktionierte bei mir mit Ubuntu 14.04, das auf einem Chromebook mit Crouton installiert war. Nichts anderes, was ich online gefunden hatte, funktionierte
Niall

17

Vergessen Sie nicht, das Terminalfenster zu schließen und erneut zu starten;)

(zumindest wenn Sie "npm --version" im Terminal überprüfen möchten)

sudo npm install npm -g

das hat auch mir geholfen


13

Sieht so aus, als würden Sie Ubuntu verwenden (über die angezeigte Befehlszeile). So aktualisieren Sie npmund nodejsSie können das PPA-Repository verwenden:

sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update
sudo apt-get install nodejs npm

1
E: The repository 'http://ppa.launchpad.net/chris-lea/node.js/ubuntu bionic Release' does not have a Release file. N: Updating from such a repository can't be done securely, and is therefore disabled by default. N: See apt-secure(8) manpage for repository creation and user configuration details. für Ubuntu 18.04
anon58192932

Err: 11 ppa.launchpad.net/chris-lea/node.js/ubuntu bionic Release 404 nicht gefunden [IP: 91.189.95.83 80]
Kiran Reddy

1
Um den lästigen Fehler loszuwerden, führen Sie Folgendes aus: rm /etc/apt/sources.list.d/cooperjona-ubuntu-nitrotasks-bionic.list
Abdelghani AINOUSS

9

Versuchte die oben genannten Optionen unter Ubuntu 14.04, aber sie würden ständig diesen Fehler erzeugen:

npm ERR! tar pack Fehler beim Lesen von /root/tmp/npm-15864/1465947804069-0.4854120113886893/package

Dann fand diese Lösung online:

1) Bereinigen Sie zuerst den Cache von npm:

sudo npm cache clean -f

2) Installieren Sie das n- Modul von npm:

sudo npm install -g n

3) Beginnen Sie die Installation, indem Sie die zu installierende Version des Knotens auswählen: Stable oder Neueste . Hier wird Stable verwendet :

sudo n stable

4) Überprüfen Sie die Version des Knotens:

node -v

5) Überprüfen Sie die Version von npm:

npm -v

Diese Antwort könnte etwas erweitert werden, um zu erklären, was die weniger offensichtlichen Befehle tun.
Madbreaks

6

Um die neueste stabile Version zu erhalten, führen Sie sie einfach aus

npm install npm@latest -g

Es hat gut funktioniert für mich!



2

Upgrade auf NodeJS v0.12.7

 # Note the new setup script name for Node.js v0.12
 curl -sL https://deb.nodesource.com/setup_0.12 | sudo bash -

 # Then install with:
 sudo apt-get install -y nodejs

Quelle von nodeource.com



1
npm i -g npm

      Update available 4.5.0 → 4.6.1    │
   │     Run npm i -g npm to update 

Dies ist, was npm empfiehlt, wenn im Terminal das zweite Stück direkt von meinem Terminal kopiert und eingefügt wird

Hinweis: Ich benutze einen Mac


Die Frage bezieht sich speziell auf Ubuntu, nicht auf Osx. Wenn ich Ihren Befehl in Ubuntu ausprobiert habe, npmschlägt dies mit fehl Error: Cannot find module 'process-nextick-args'. Sie sollten Ihre Antwort entfernen.
Anthony Kong

1

Überprüfen Sie Ihre Knotenversion Knoten -v und Ihre npm- Version npm -v. Dann aktualisieren Sie Ihre npm dies in Ihr Terminal ein: sudo npm install npm @ latest -g

NB: Debian-basiertes Betriebssystem {Ubuntu oder Linux Mint}


1

NPM gab die alte Version nach dem Ausführen zurück $ sudo npm install npm -g .

Durch einen Neustart des Terminals (dh Schließen und erneutes Öffnen) wurde das Problem für mich behoben und $ npm --versiondie erwartete Version zurückgegeben.

* @Rimian erwähnt die Notwendigkeit, das Terminal neu zu laden, in einem Kommentar zu einer anderen Antwort.


0

Wenn Sie npm auf eine bestimmte Version aktualisieren möchten, können Sie Folgendes verwenden:

npm install npm@version-number


0

Überprüfen Sie Ihre Knotenversion node -vund Ihre npm-Version. npm -v Um Ihre npm zu aktualisieren, geben Sie dies in Ihr Terminal ein: npm install npm@latest -g

Hoffe ich konnte helfen. Grüße


0

Das hat bei Ubuntu für mich funktioniert curl -L https://www.npmjs.com/install.sh | sh



0

Sie können den npmPaketmanager verwenden:

npm install npm@latest

Dies wird npmmit der neuesten Version installiert .


-1

Für Ubuntu 18.04

npm installiere die neueste Version

Ich hoffe es ist auch für dich

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.