web-dev-qa-db-fra.com

npm --version est différent si vous utilisez Sudo npm --version

Je viens de mettre à niveau nodejs sur ma machine. J'ai désinstallé la version du nœud (celle des référentiels ubuntu) que j'avais. Ensuite, j'ai installé nvm et nodejs 4.2.2.

Tout se passe sans erreur, mais quand j'ai lancé npm --version, il affichait la version 2.14.7, puis j'ai décidé de lancer: Sudo npm install -g npm afin de mettre à niveau la version de npm, mais lorsque je l'ai vérifiée, il affichait toujours la version 2.14. sept. J'ai donc vérifié une nouvelle fois, mais en utilisant Sudo npm --version cette fois, et il y avait la dernière version 3.3.10.

Pourquoi cela se produit et comment puis-je résoudre le problème

Voici une capture d'écran:
Different npm version is showed with or without Sudo

J'utilise Ubuntu 14.04.

Modifier:

ajouter quelles sorties de commande

sistemas@ITAACO01:~$ which npm
/home/sistemas/.nvm/versions/node/v4.2.2/bin/npm
sistemas@ITAACO01:~$ Sudo which npm
/usr/local/bin/npm
4
HTOch

Il apparaît (des sorties which) que votre utilisateur (sistemas) est configuré pour utiliser une version différente et obsolète de npm située à l'adresse /home/sistemas/.nvm/versions/node/v4.2.2/bin/npm - en ignorant le système mis à jour. -wide version à /usr/local/bin/npm.

Vérifiez si /usr/local/bin est dans votre $PATH. (Faites echo $PATH et voyez si sa sortie contient /usr/local/bin.

Sinon, ajoutez-le (mettez PATH="$PATH:/usr/local/bin" dans votre ~/.bash_profile)

1

Il y a 2 possibilités:

  1. Le nouveau chemin de version n'est pas présent:

    Ajoutez le chemin. Par exemple: Ajouter /usr/local/bin/npm au chemin

  2. L'ancienne version est antérieure à $PATH:

    Supprimez l'ancien chemin de la version. Par exemple: Supprimer /home/sistemas/.nvm/versions/node/v4.2.2/bin/npm de $PATH

0
heeraj123