npm --version é diferente se usar sudo npm --version

4

Acabei de atualizar o nodejs na minha máquina. Eu desinstalei a versão do nó (aquela nos repositórios do Ubuntu) que eu tinha. Então eu instalei o nvm e instalei o nodejs 4.2.2.

Tudo corre sem erros, mas quando eu corri npm --version ele mostrou 2.14.7, então eu decidi executar: sudo npm install -g npm para atualizar a versão npm, mas quando eu chequei, ele ainda estava mostrando 2.14.7 . Então, eu verifiquei novamente, mas usando sudo npm --version desta vez, e havia a última versão 3.3.10.

Por que isso acontece e como posso corrigi-lo?

Aqui está uma captura de tela:

Estou usando o Ubuntu 14.04.

Editar:

adicionando saídas de comando

sistemas@ITAACO01:~$ which npm
/home/sistemas/.nvm/versions/node/v4.2.2/bin/npm
sistemas@ITAACO01:~$ sudo which npm
/usr/local/bin/npm
    
por HTOch 04.11.2015 / 18:19

2 respostas

1

Aparece (de which outputs) que seu usuário ( sistemas ) está configurado para usar uma versão diferente e desatualizada de npm localizada em /home/sistemas/.nvm/versions/node/v4.2.2/bin/npm - ignorando a versão atualizada do sistema em /usr/local/bin/npm .

Verifique se /usr/local/bin está no seu $PATH . (Do echo $PATH e veja se sua saída contém /usr/local/bin .

Se não, adicione-o (coloque PATH="$PATH:/usr/local/bin" no seu ~/.bash_profile )

    
por UniversallyUniqueID 27.03.2016 / 14:22
0

Existem 2 possibilidades:

  1. O novo caminho da versão não está presente:

    Adicione o caminho. Por exemplo: Adicione /usr/local/bin/npm ao caminho

  2. A versão mais antiga é anterior no $PATH :

    Remova o caminho da versão mais antiga. Por exemplo: Remova /home/sistemas/.nvm/versions/node/v4.2.2/bin/npm de $PATH

por heeraj123 01.08.2018 / 14:36