Mettez à niveau Node.js vers la dernière version sur Mac OS

723

Actuellement, j'utilise Node.js v0.6.16 sur Mac OS X 10.7.4. Maintenant, je veux le mettre à niveau vers le dernier Node.js v0.8.1. Mais après avoir téléchargé et installé le dernier fichier de package à partir de nodejs.org, j'ai trouvé que le système utilise toujours la v0.6.16 au lieu de la v0.8.1 lorsque j'ai tapé "node -v" dans un terminal. Y a-t-il une étape que j'ai ratée? Ou dois-je désinstaller complètement l'ancienne version avant d'installer la dernière?

BTW, je sais que nvm peut aider à gérer le paquet nodejs

https://github.com/creationix/nvm/

Existe-t-il un moyen de mettre à niveau Node.js sans l'utiliser?

J'ai googlé ce problème, mais il me semble qu'il n'y a pas de réponse très claire à cette question pour le dernier Node.js.

rémanence
la source
Merci Bob. J'ai mis à jour ma question.
afterglowlee
Vous n'êtes pas sûr d'une réponse, mais pour clarifier, un processus de nœud est-il en cours d'exécution lorsque vous le mettez à jour?
Bob Davies
Non, je ne pense pas qu'un processus Node soit en cours d'exécution. Et après avoir redémarré le système d'exploitation, la commande "node -v" indique toujours que la version 0.6.6 est en cours d'exécution.
afterglowlee
1
Les gens - c'est une question de 6 ans et avec des réponses tout aussi anciennes. Nul doute qu'il s'agissait à l'époque des meilleures pratiques. Mais à partir de 2018, cela brew upgrade nodedevrait très bien fonctionner. Veuillez voir la réponse de wprl ci-dessous.
pscl
2
@pscl Depuis février 2019, le site Web npm recommande en fait d'utiliser un gestionnaire de versions Node comme nou nvmpour installer et mettre à niveau Node et npm.
alexw

Réponses:

1401

Voici comment j'ai réussi à passer de v0.8.18à v0.10.20 sans aucune autre exigence comme brew etc., (tapez ces commandes dans le terminal):

  1. sudo npm cache clean -f (forcer) vider le cache npm
  2. sudo npm install -g ninstaller n (cela peut prendre un certain temps)
  3. sudo n stable mise à niveau vers la version stable actuelle

Notez que cela sudopourrait vous demander votre mot de passe.

Note supplémentaire concernant l' étape 3: stablepeuvent être échangés contre latest, lts(soutien à long terme) ou un numéro de version spécifique tel que 0.10.20.

Si le numéro de version n'apparaît pas lors de la frappe node -v, vous devrez peut-être redémarrer.

Ces instructions se trouvent également ici: davidwalsh.name/upgrade-nodejs
Plus d'informations sur le package n trouvé ici: npmjs.com/package/n
Plus d'informations sur le calendrier de sortie de Node.js: github.com/nodejs/Release

Johan Dettmar
la source
6
travaillé pour mettre à jour le nœud de v0.10 à v0.12 dans macos x snow leopard. Je vous remercie.
Salvador P.
3
FWIW vous pouvez utiliser 'n lts' pour installer la version de support à long terme plutôt que la version stable actuelle (ie 4.4.3 au lieu de 5.10.1 au moment de la rédaction)
StephenT
2
Erreur d'infusion. C'est la bonne réponse, actuellement.
oguzhan00
5
sudo n ltscomme dernière étape, vous obtenez une version de support à long terme
Slartibartfast
3
Cela a fonctionné, mais personne n'explique à quoi servent les commandes pour lesquelles l'installation de "n" est utile. Je viens de découvrir aujourd'hui que "n" est un gestionnaire de version de Node.js, comme expliqué quelque peu sur le site Web de npm js - npmjs.com/get-npm
Mark
863

Si vous avez initialement installé Node.js avec Homebrew , exécutez:

brew update
brew upgrade node
npm install -g npm

Ou en monoplace:

brew update && brew upgrade node && npm install -g npm

Un moyen pratique de changer de version consiste à utiliser nvm :

brew install nvm

Pour installer la dernière version de Node.js avec nvm:

nvm install node

Si vous avez installé via un package, téléchargez la dernière version depuis nodejs.org . Voir Installation de Node.js et mise à jour de npm .

wprl
la source
2
@afterglowlee Vous pouvez essayer de désinstaller l'ancien nœud avant de réinstaller le nouveau: stackoverflow.com/questions/9044788/…
wprl
14
Je viens de voter pour cette réponse, mais après 7 minutes d'attente, Brew m'a dit que l'installation a échoué ... J'ai également essayé port upgrade node, mais Brew a déjà foiré le paquet et le port ne trouve pas le nœud maintenant ... Enfin, je suis allé sur nodejs.org pour téléchargez le package d'installation, et boom! Tout se passe bien, y compris le npm!
Jinzhao Huo
3
@Jinzhao Il est recommandé de ne pas installer plus d'un de Homebrew, MacPorts ou Fink.
wprl
2
dans la version de brassage actuelle, il est indiqué "Si vous mettez à jour npm lui-même, n'utilisez PAS la commande npm update. La méthode recommandée en amont pour mettre à jour npm est: npm install -g npm @ latest"
Pascal
7
Exécutez npm install -g nodeaprès avoir suivi les instructions ci-dessus si la version de votre nœud n'est toujours pas mise à jour.
Thilina Hasantha
172

Parce que cela semble être au sommet de Google lors de la recherche de la mise à niveau de nodejs sur mac, je proposerai mon conseil à tous ceux qui viendront à l'avenir malgré son âge.

Mise à niveau via NPM
Vous pouvez utiliser la méthode décrite par @Mathias ci-dessus ou choisir la méthode plus simple suivante via le terminal.

sudo npm cache clean -f
sudo npm install -g n
sudo n stable

Après quoi, vous pouvez choisir de confirmer la mise à niveau

node -v

Vos nodejs devraient avoir mis à niveau vers la dernière version. Si vous souhaitez passer à une version spécifique, dites v0.8.19, puis au lieu de

sudo n stable

utilisation

sudo n 0.8.19

EDITER Évitez d'utiliser sudo sauf si vous en avez besoin. Se référer au commentaire de Steve dans les commentaires

Kennedy Nyaga
la source
4
Pourquoi voudriez-vous voter contre une réponse et ne pas ajouter de commentaire expliquant pourquoi?
Kennedy Nyaga du
Parce que vous conseillez d'utiliser sudo.
OZ_
2
Cela fonctionne, mais: est-il vraiment nécessaire d'utiliser le --forcedrapeau cache clean? Et je n'avais pas besoin sudodes deux premières commandes.
Steve Bennett
Merci @SteveBennett d'avoir ajouté cela, j'ai ajouté sudo afin d'inclure les débutants qui en auraient besoin, plutôt que de les laisser bloqués. De plus, avoir sudo fonctionnera dans les deux cas.
Kennedy Nyaga
5
Parfois, utiliser sudo quand il n'est pas nécessaire crée un véritable gâchis, car vous vous retrouvez avec des fichiers appartenant à root, qui ne peuvent alors pas être modifiés sans sudo.
Steve Bennett
59

Accédez à http://nodejs.org et téléchargez et exécutez le programme d'installation. Cela fonctionne maintenant - pour moi au moins.

Spoeken
la source
Savez-vous par hasard comment les mises à jour de jode.js sont installées dans OS / X?
Dimitrios Mistriotis
Je ne suis pas sûr de comprendre ce que vous demandez
Spoeken
1
Désolé pour la confusion (écrit à la hâte). J'ai installé node.js directement à partir du lien de téléchargement du site, version actuelle: v0.8.14. Lorsque disons que la v0.8.15 sera publiée, devrai-je la télécharger à nouveau, sera-t-elle mise à jour automatiquement, sera-t-elle appelée et me préviendra-t-elle? Avec homebrew par exemple, je faisais une mise à niveau de la bière (donc ça
dépendait
1
Je ne pense pas que ça va appeler à la maison. Vous devrez vérifier régulièrement et télécharger la nouvelle version de leur page Web je pense. Mais je ne suis pas à 100% à ce sujet.
Spoeken
5
probablement le moyen le plus simple ici.
Mohit
45

Vous pouvez installer nvm et avoir plusieurs versions de Node.js installées.

curl https://raw.github.com/creationix/nvm/master/install.sh | sh
source ~/.nvm/nvm.sh

puis exécutez:

nvm install 0.8.22  #(or whatever version of Node.js you want)

vous pouvez voir avec quelles versions vous avez installé:

nvm list

et vous pouvez changer de version avec:

nvm use 0.8.22

La grande chose à propos de l'utilisation de NVM est que vous pouvez tester différentes versions côte à côte. Si différentes applications nécessitent différentes versions de Node.js, vous pouvez les exécuter toutes les deux.

fijiaaron
la source
2
J'utilise cette méthode maintenant. Il me semble que c'est la meilleure façon de faire fonctionner plusieurs versions sur la même machine.
afterglowlee
28

J'utilise Node version manager (appelé n) pour cela.

npm install -g n

puis

n latest

OU

n stable
Shaikh Shahid
la source
2
Version LTSn lts
Sergio Rodrigues
24

Allez simplement sur le site Web du nœud JS et installez la dernière version.

Installez la dernière version au lieu de la version stable recommandée. Il vous donnera la liberté d'utiliser les dernières fonctionnalités ES6 sur le nœud.

Peut être trouvé ici Node JS .

aussi pour mettre à jour npm , vous devrez utiliser cette commande.

sudo npm i -g npm@latest

Tous vos projets fonctionneront bien.


Autre option pour mac :: brew update && brew install node && npm -g npm

Tarandeep Singh
la source
20

Sur macOS, la méthode recommandée par homebrew est d'exécuter

brew install node
npm install -g npm@latest

Capture d'écran des commandes de terminal

Nick Woodhams
la source
1
Il installera la version la plus récente, pas seulement la version brassée la plus récente.
Nick Woodhams
11

Je suis capable de mettre à niveau le nœud en utilisant la commande suivante

nvm install node --reinstall-packages-from=node
Rohit Kale
la source
8

malheureusement, nça n'a pas marché pour moi. J'utilise node version manager or nvmet ça marche comme un charme. voici le lien sur la façon d'installer nvm: https://github.com/creationix/nvm#installation

  • nvm i 8.11.2 mise à niveau vers le dernier LTS
  • nvm use 8.11.2 utilise le
  • node -v vérifiez votre dernière version
Jannomeister
la source
1
C'est celui qui a fonctionné pour moi. J'ai essayé plusieurs des meilleurs commentaires, mais après avoir suivi les étapes, le nœud est toujours bloqué en v6. Merci!
gedii
1
Cela a fonctionné pour moi. merci jannomeister. vote positif pour la réponse acceptée s'il vous plaît
Richard Abear
6

Allez sur le site nodejs.org et téléchargez le dernier paquet puis installez. ça marche pour moi

J'ai utilisé brew pour mettre à jour mon nœud. Il a installé mais il a localisé dedans /usr/local/Cellar/node/5.5.0et il y a un noeud par défaut dans /usr/local/bin/nodelequel me dérange. Je ne veux pas faire de lien doux car je ne sais pas vraiment comment le brassage est organisé. J'ai donc téléchargé le pkgfichier, installé et j'ai obtenu ces informations:

Node.js a été installé à

/usr/local/bin/node

npm a été installé à

/usr/local/bin/npm

Assurez-vous que cela se /usr/local/bintrouve dans votre $ PATH.

Maintenant, la mise à niveau est terminée

Lucas Liu
la source
5

Vous pouvez simplement aller sur nodejs.org et télécharger le dernier package. Il se mettra à jour de manière appropriée pour vous. Le NPM sera également mis à jour.

BRogers
la source
2
De loin le plus simple, si vous l'avez initialement installé via le site Web.
Elwin
4

Easy nad Safe Steps

Étape 1: installer NVM

brew install nvm

Étape 2: créer un répertoire pour NVM

mkdir ~/.nvm/

Étape 3: configurez vos variables d'environnement

nano ~/.bash_profile

COLLER CI-DESSOUS CODE

export NVM_DIR=~/.nvm
source $(brew --prefix nvm)/nvm.sh

source ~/.bash_profile

Étape 4: revérifiez votre travail

nvm ls

Étape 5: installer le nœud

nvm install 9.x.x

Étape 6: mise à niveau

nvm ls-remote

   v10.16.2   (LTS: Dubnium)
   v10.16.3   (Latest LTS: Dubnium) ..........

nvm install v10.16.3

Dépannage

Error Example #1
rm -rf /usr/local/lib/node_modules
brew uninstall node
brew install node --without-npm
echo prefix=~/.npm-packages >> ~/.npmrc
curl -L https://www.npmjs.com/install.sh | sh

https://www.chrisjmendez.com/2018/02/07/install/

Narendranath Reddy
la source
3

Vous pouvez courir mais vous ne pouvez pas vous cacher ... À la fin, vous utiliserez de toute façon NVM .

Igor Escobar
la source
2
Ou le paquet 'n' ... Voir la réponse de Kenny West si vous souhaitez un gestionnaire de paquets simple que vous pouvez installer via npm.
depthfirstdesigner
3

Je pense que le moyen le plus simple d'utiliser la dernière version de Node.js est d'obtenir le dernier fichier de package Node.js sur le site Web https://nodejs.org/en/download/current/ si vous souhaitez utiliser une version différente de Node .js vous pouvez utiliser nvm ou n pour le gérer.

user4810973
la source
3
sudo npm install -g n

et alors

sudo n latest for linux/mac users

Pour Windows, veuillez réinstaller le nœud.

sumanth reddy
la source
3

Nvm Nvm est un gestionnaire de version de nœud basé sur un script. Vous pouvez l'installer facilement avec une doublure curl and bash comme décrit dans la documentation. Il est également disponible sur Homebrew.

En supposant que vous avez correctement installé nvm. Les éléments suivants installeront la dernière version du nœud.

 nvm install node --reinstall-packages-from=node

La dernière option installe tous les packages npm globaux dans votre nouvelle version. De cette façon, les packages comme mocha et node-inspector continuent de fonctionner.

N N est un gestionnaire de version de nœud basé sur npm. Vous pouvez l'installer en installant d'abord une version du nœud, puis en l'exécutant npm install -g n.

En supposant que vous avez correctement installé n. Les éléments suivants installeront la dernière version du nœud.

sudo n latest

Homebrew Homebrew est l'un des deux gestionnaires de packages populaires pour Mac. En supposant que vous avez déjà installé le nœud avec le nœud d'installation de brew. Vous pouvez vous mettre à jour avec les formules et passer à la dernière version de Node.js avec les éléments suivants.

1 brew update
2 brew upgrade node

MacPorts MacPorts est un autre gestionnaire de packages pour Mac. Les éléments suivants mettront à jour l'arborescence des ports locaux pour accéder aux versions mises à jour. Ensuite, il installera la dernière version de Node.js. Cela fonctionne même si la version précédente du package est installée.

1 sudo port selfupdate
2 sudo port install nodejs-devel
Rubin bhandari
la source
brew upgrade nodeest un jeu d'enfant
khawarizmi
C'est ce qui a fonctionné pour moi sur OSX. J'avais probablement NVM installé parce que node -vje continuais à me donner 6.11.1même après les commandes liées à n latestet ainsi de suite. La mise à niveau de l'infusion a fonctionné. Merci.
Khom Nazid
2

Ces 2 méthodes que j'ai essayées ne fonctionnent pas:

  1. Utilisez npm

sudo npm cache clean -f

sudo npm install -g n

sudo n stable

  1. Noeud d'installation manuelle depuis le site officiel ( https://nodejs.org/en/ )

Après avoir essayé, node -vaffiche toujours l'ancienne version du nœud.


La méthode ci-dessous fonctionne pour moi:

Étape 1: installez nvm (pour plus de détails: https://github.com/creationix/nvm#installation )

Ouvrez le terminal et tapez cette commande:

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash

Fermez le terminal et rouvrez-le.

Tapez cette commande pour vérifier si nvm est installé:

command -v nvm

entrez la description de l'image ici

Étape 2: pour télécharger, compiler et installer la dernière version de node, tapez ceci:

nvm install node ("nœud" est un alias pour la dernière version)

Pour vérifier si le nœud obtient la dernière version (v10.11.0).

entrez la description de l'image ici

L'installation du dernier nœud installe également le dernier npm.

Vérifiez si npm obtient la dernière version (6.4.1).

entrez la description de l'image ici

Saviah Kao
la source
J'ai trouvé que cette méthode ne fonctionne pas pour moi maintenant. Voici comment je l'ai fait à la place: npm install -g n sudo n 10.11.0(dans mon cas, je veux juste mettre à jour vers 10.11.0) Puis il a mis à jour vers 10.11.0node -v
Saviah Kao
1

Utilisez nvm pour mettre à niveau le nœud conformément aux exigences du projet.

installer nvm via homebrew .. brew update brew install nvm mkdir ~ / .nvm nano ~ / .bash_profile

Dans votre fichier .bash_profile (vous utilisez peut-être un autre fichier, selon votre shell), ajoutez ce qui suit:

export NVM_DIR = ~ / .nvm source $ (brew --prefix nvm) /nvm.sh

source ~ / .bash_profile echo $ NVM_DIR

radhey shyam
la source
0

J'ai eu le même problème. C'est ce qui a fonctionné pour moi car j'ai téléchargé et installé node.js dans le monde partir du site Web node.js.

Ce que j'ai fait, c'est essayer NVM (Node Version Manager). Veuillez exécuter les commandes dans l'ordre suivant dans votre terminal

  1. curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | frapper

  2. commande -v nvm

  3. nœud d'installation nvm

  4. noeud -v (pour confirmer la mise à jour)

fypnlp
la source
0

Vous pouvez directement utiliser curl pour mettre à niveau le nœud vers la dernière version. Exécutez la commande suivante:

curl "https://nodejs.org/dist/latest/node-${VERSION:-$(wget -qO- https://nodejs.org/dist/latest/ | sed -nE 's|.*>node-(.*)\.pkg</a>.*|\1|p')}.pkg" > "$HOME/Downloads/node-latest.pkg" && sudo installer -store -pkg "$HOME/Downloads/node-latest.pkg" -target "/"

Référence: https://nodejs.org/en/download/package-manager/#macos

user846316
la source
0

C'est juste pour ajouter des informations pour les personnes qui n'ont pas installé Node avec Homebrew mais qui obtiennent cette même erreur lors de la tentative d'installation de packages avec npm sur Mac OS X .

J'ai trouvé ce bon article expliquant comment supprimer complètement Node quelle que soit la façon dont vous l'avez installé à l'origine.

Après que node , npm et n aient été complètement supprimés de ma machine, je viens de réinstaller Node.js en utilisant le programme d'installation officiel .pckg du site Web de Node et tout est revenu à la normale.

J'espère que cela aide quelqu'un.

rogopag
la source
-1

J'ai pu mettre à jour en ~ 20 secondes avec une seule ligne de code

sudo n latest

D'autres commandes ne fonctionnaient pas pour moi, mais celle-ci fonctionnait. J'espère que ça aide quelqu'un.

Shyam
la source