2014-04-30 9 views
76

Próbuję zainstalować meanplate cardplate. Nie działa przy uruchomieniu sudo npm install -g [email protected]. Przed niepowodzeniem zauważa, że ​​"chce" npm w wersji 1.4.x, a ja mam zainstalowany 1.2.18. Tak więc próbowałem aktualizować NPM do najnowszego; kilka sposobów. Ostatni z nich to ...Jak zaktualizować npm

[email protected]:~$ sudo npm install -g npm 
/usr/local/bin/npm -> /usr/local/lib/node_modules/npm/bin/npm-cli.js 
[email protected] /usr/local/lib/node_modules/npm 

[email protected]:~$ npm --version 
1.2.18 

Dlaczego nadal wyświetla się wersja 1.2.18, kiedy właśnie zaktualizowałem do wersji 1.4.7?

+8

Czy 'sudo npm update npm -g' –

+0

Jeśli możesz ryzykować korzystanie z nieobsługiwanego PPA, spróbuj https://launchpad.net/~chris-lea/+archive/node.js/ – TeTeT

+0

sudo npm install npm -g helped mnie – thinklinux

Odpowiedz

11

Wygląda na to, że używasz Ubuntu (z wiersza poleceń, który pokazujesz). Aby zaktualizować npm i nodejs można użyć repozytorium PPA:

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

Spowoduje to aktualizację npm użyciu KMP sam:

sudo npm install npm -g 

Jeśli utkniesz, spróbuj sudo npm update npm -g. Wszystkie zasługi należą się Timowi Castelijnowi. Mam przetestowane na Ubuntu 14.04, npm 1.3.10


pamiętać, że jeśli używasz nvm dla zarządzania wieloma wersjami w lokalnym środowisku dev np celów testowych, wszystkie zainstalowane wersje (wymienione przez nvm ls) są w ~/.nvm, stąd po prostu pominąć szeroki instalacji systemu (tj pominąć sudo):

npm install npm -g 

DEBIAN ENTERPRISE

Dla pełnej praktyce przedsiębiorstw rozważyć nodesource.com:

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

zgodnie z opisem here.

Pozostałe przedsiębiorstwa

Dla rozkładów non-debian sprawdź na węzeł github wiki https://github.com/joyent/node/wiki/installing-node.js-via-package-manager strona pobierania https://nodejs.org/en/download/

Do historycznego rozumienia: Chis Lea została zachowując PPA ale teraz joined forces z nodesource.

+0

Zalecam używanie repozytorium PPA, aby pozwolić menedżerowi pakietów ubuntu na utrzymywanie aktualizacji wraz ze wszystkim innym. – henry74

+0

Na temat serwerów produkcyjnych, tak, może. Ale na dev naprawdę chcesz zagwarantować, że dostajesz rzeczy bezpośrednio od opiekuna pakietu npm, a nie opiekuna PPA –

+0

Nie zgadzam się. Nie chcesz, aby dev różniło się od produkcji lub napotkasz problemy z wdrażaniem dla różnych wersji. – henry74

26

jeśli odpowiedź user3223763 koszulka nie działa, można spróbować to:

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 

Następnie:

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

Po tym, otworzyć nowy terminal i sprawdzić wersję npm:

npm --version 

EDYCJA/AKTUALIZACJA:

Dziś ostatnia wersja NVM jest:

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

Zatem polecenie CURL jest: v0.25.4 zamiast v0.13.1

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

You can check https://github.com/creationix/nvm/releases to use the correct version for further upgrades

+2

User3223763 nie działa dla mnie, ani też nie aktualizowałem npm. Dziękuję Daniel – hectorg87

+2

Mogę potwierdzić, że ta metoda pomogła zaktualizować npm. Poprzednie metody miały niepopełnione zależności bibliotek lub aktualizowały npm, ale nie aktualizowałyby ścieżki/środowiska do korzystania z nowej lokalizacji. – will824

+0

To również działało dla mnie, inne odpowiedzi nie były dostępne na Ubuntu 14.0.4 – islanddave

2

uaktualnienie do 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 

Source from nodesource.com

3

Próbowałem opcji powyżej na Ubuntu 14.04, ale oni ciągle produkować ten błąd:

npm ERR! tar pack Error reading /root/tmp/npm-15864/1465947804069-0.4854120113886893/package

Następnie znaleźć to rozwiązanie internetowe:

sudo npm cache clean -f 
sudo npm install -g n 
sudo n stable 
npm -v 
node -v 
+0

Ta odpowiedź może użyć rozszerzenia, aby wyjaśnić, co robią mniej oczywiste polecenia. – Madbreaks

2

Aby uzyskać najnowszą stabilną wersję wystarczy uruchomić

npm install [email protected] -g 

Udało mi się to dobrze!

1
npm i -g npm 

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

to co npm zaleca gdy w terminalu, drugi kawałek jest bezpośrednio kopiować i wklejać z moim terminalu

uwaga: im przy mac

+0

Pytanie dotyczy konkretnie ubuntu, a nie osx. Jeśli wypróbowałem twoje polecenie w Ubuntu, 'npm' zakończy się niepowodzeniem z' Error: Can not find module 'process-nextick-args''. Powinieneś usunąć swoją odpowiedź. –

3

można spróbować:

sudo npm i -g npm