Nie mogę zainstalować żadnego modułu węzła z npm.
npm install socket.io
Powyższe polecenie spowodowało spadek danych wyjściowych, nie można zainstalować socket.io
npm http GET https://registry.npmjs.org/socket.io
npm ERR! Error: failed to fetch from registry: socket.io
npm ERR! at /opt/node0610/lib/node_modules/npm/lib/utils/npm-registry-client/get.js:139:12
npm ERR! at cb (/opt/node0610/lib/node_modules/npm/lib/utils/npm-registry-client/request.js:32:9)
npm ERR! at Request._callback (/opt/node0610/lib/node_modules/npm/lib/utils/npm-registry-client/request.js:137:18)
npm ERR! at Request.callback (/opt/node0610/lib/node_modules/npm/node_modules/request/main.js:109:22)
npm ERR! at Request.<anonymous> (/opt/node0610/lib/node_modules/npm/node_modules/request/main.js:198:58)
npm ERR! at Request.emit (events.js:88:20)
npm ERR! at ClientRequest.<anonymous> (/opt/node0610/lib/node_modules/npm/node_modules/request/main.js:195:10)
npm ERR! at ClientRequest.emit (events.js:67:17)
npm ERR! at CleartextStream.<anonymous> (http.js:1134:11)
npm ERR! at CleartextStream.emit (events.js:67:17)
npm ERR! You may report this log at:
npm ERR! <http://github.com/isaacs/npm/issues>
npm ERR! or email it to:
npm ERR! <npm-@googlegroups.com>
npm ERR!
npm ERR! System Linux 2.6.18-194.el5
npm ERR! command "node" "/opt/node0610/bin/npm" "install" "socket.io"
npm ERR! cwd /opt/node0610/lib/node_modules
npm ERR! node -v v0.6.10
npm ERR! npm -v 1.1.0-3
npm ERR! message failed to fetch from registry: socket.io
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR! /opt/node0610/lib/node_modules/npm-debug.log
npm not ok
Moja wersja NPM to:
[applmgr@dev node_modules]$ npm --version
1.1.0-3
Moja wersja NodeJS to:
[applmgr@dev node_modules]$ node --version
v0.6.10
npm
wersja. Zaktualizuj go do najnowszej wersji i spróbuj ponownie:sudo npm update npm -g
Odpowiedzi:
Miałem ten problem z
npm v1.1.4
(inode v0.6.12
), które sąUbuntu 12.04
wersjami repozytorium.Wygląda na to, że ta wersja
npm
nie jest już obsługiwana, aktualizacja węzła (i npm z nim) rozwiązała problem.Najpierw odinstaluj nieaktualną wersję (opcjonalnie, ale myślę, że to rozwiązało problem z brakiem łatania modułów globalnych).
Następnie włącz repozytorium nodesource i zainstaluj:
Uwaga - poprzednia rada polegała na korzystaniu z repozytorium Chrisa Lei, teraz migrował to do źródła węzłów, patrz:
Od: tutaj
źródło
https://github.com/isaacs/npm/issues/2119
Musiałem wykonać poniższe polecenie:
Spowoduje to jednak utworzenie
npm
pakietów instalacyjnych przez niepewne połączenie HTTP. Jeśli możesz, powinieneś się trzymaćzamiast tego zainstalować przez HTTPS.
źródło
Jestem na Ubuntu. Użyłem apt-get, aby zainstalować węzeł. Pakiet Npm nie był zawarty w tym pakiecie, więc musiał zostać zainstalowany osobno. Zakładałem, że to zadziała, ale najwyraźniej wersja npm w dystrybucji Ubuntu była przestarzała.
Węzeł wiki ma następującą instrukcję:
Potem npm został już włączony i działał idealnie.
źródło
Dla mnie jest to zwykle problem z serwerem proxy i próbuję wszystkiego:
źródło
npm config set strict-ssl false
wroked dla mnie.Musisz także zainstalować wspólne właściwości oprogramowania, aby repozytorium add-apt działało. tak będzie
źródło
Jedną rzeczą, która działała dla mnie z przypadkowymi błędami instalacji npm (gdzie pakiet, który wyskakuje, jest różny w różnych czasach (ale w tym samym środowisku) jest użycie tego:
npm cache clean
A następnie powtórz proces. Następnie proces wydaje się przebiegać płynniej i pojawia się prawdziwy problem i komunikat o błędzie, w którym można go naprawić, a następnie kontynuować.
Opiera się to na doświadczeniu z uruchamianiem npm całej gamy pakietów w ramach dość czystej instalacji Ubuntu wewnątrz instancji Docker. Czasami w Ubuntu brakuje narzędzi do kompilacji / tworzenia, a błędy npm nie pokażą prawdziwego problemu, dopóki z jakiegoś powodu nie wyczyścisz pamięci podręcznej.
źródło
Ten problem wynika z protokołu https, dlatego działa inne rozwiązanie (przełączając się na protokół niezabezpieczony).
Dla mnie najlepszym rozwiązaniem było skompilowanie najnowszej wersji węzła, która zawiera npm
źródło
Są teraz oficjalne instrukcje od joyent (główny obrońca nodejs). W przypadku Ubuntu:
W przypadku innych dystrybucji Uniksa, OSX i Windows patrz link. Uwaga: zainstaluje to zarówno węzeł, jak i npm.
źródło
Jedyna rzecz, która działała dla mnie w elementarnym systemie operacyjnym Luna, widelec Ubuntu. Jestem na architekturze x86. Próbowałem tutaj wszystkich odpowiedzi, ale w końcu zdecydowałem się zainstalować go ze źródła.
Najpierw upewnij się, że nie jest zainstalowany za pomocą menedżera pakietów:
Poszedłem na stronę pobierania, aby wyszukać najnowsze źródło i pobrać je, http://nodejs.org/download/ . Aby go uzyskać, możesz użyć curl, wget lub przeglądarki:
Marka może chwilę potrwać. Po zakończeniu powinieneś mieć zainstalowany węzeł i npm i pracować w katalogu / usr / local / bin, który powinien już znajdować się na twojej ścieżce. Powinieneś sprawdzić, gdzie mieszka:
Musiałem także zmienić uprawnienia, aby działało:
Jeśli to nie zadziała, sprawdź swoją ścieżkę:
Pamiętaj, że zainstalowanie go w ten sposób nie będzie zarządzane przez menedżera pakietów apt-get. Twoje zdrowie!
źródło
Poniższa metoda działała dla mnie, Kudos na użytkownika github: midnightcodr
Upewnij się, że usunąłeś już wszystkie zainstalowane pakiety nodejs / npm.
Teraz zainstaluj Node js używając poniższego polecenia (Dzięki midnightcodr na github)
Zauważ, że możesz wywoływać węzeł za pomocą węzła poleceń, a nie węzłów.
Po zainstalowaniu węzła zainstaluj npm
źródło
Ostatnio miałem ten problem po aktualizacji node.js (i nieuchronnie npm) do najnowszej wersji:
> npm --version < 2.0.0-alpha-5
Uwaga: nie prosiłem o niestabilną wersję, po prostu ją dostałem
brew install npm
na OSX.Obniżenie npm naprawiło dla mnie problem.
Najprostszym sposobem na zainstalowanie stabilnego NPM jest,
npm install -g npm
ale w niektórych okolicznościach może on nie działać, dlatego może być konieczne obniżenie wersji node.js.źródło
Możliwe, że w tym czasie rejestr NPM był wyłączony lub połączenie zostało zerwane.
Tak czy inaczej powinieneś zaktualizować węzeł i npm.
Polecam używanie nave do zarządzania środowiskami węzłów.
https://npmjs.org/package/nave
Umożliwia łatwe instalowanie wersji i szybkie przechodzenie między nimi.
źródło
dla Raspberry Pi znalazłem i zmodyfikowałem rozwiązanie , które znalazłem
tutaj, uruchomiłem
Jedynym modem, jaki zrobiłem, była zmiana wszystkich 10.25 na 10.28, co było najnowszym linux-arm-pi w tym czasie
źródło
@ stąd odpowiedź jest najlepsza. Jednak wersje Node poruszały się coraz wyżej i wyżej, a wersjonowanie było skomplikowane z powodu remontu io.js. Postępując zgodnie z instrukcjami zawartymi w jego odpowiedzi, skończysz z wersją Węzła
0.10.25
- nie najnowszą wersją.Nadal powinieneś usunąć wszystkie istniejące pakiety węzłów / npm
a następnie przejdź do strony instalacji deb deb nodesource na https://github.com/nodesource/distribution#debinstall .
Wszystkie wersje Node.js są wymienione na powyższej stronie wraz z poleceniami Linuksa, aby je zainstalować. I te pakiety będą działać zarówno na Debianie, jak i Ubuntu .
PS Jeśli chcesz uruchomić Node v4.4 lub nowszy na Ubuntu Precise lub Debian Wheezy, powinieneś przejrzeć informacje na temat uruchamiania na starszych dystrybucjach .
PPS Jeśli twój apt-get zawiedzie , skrypt nie zostanie ukończony (referencje Google zawiodły moje
apt-get update
). Powinieneś zobaczyć komunikaty o dodawaniu klucza podpisującego NodeSource do twojego klucza oraz końcową wiadomość z instrukcjąRun 'apt-get install nodejs' to install Node.js
.PPPS npm jest instalowany z węzłem. Po zainstalowaniu możesz zaktualizować do najnowszej wersji npm za pomocą
sudo npm install npm -g
źródło