U mnie jest npm install
niezwykle powolny. Używam systemu Windows 8.1 z najnowszą wersją npm. Szybkość mojego połączenia wynosi około 100 Mb / s.
Projekt, który próbuję zainstalować, ma około 20 pakietów / zależności, a zainstalowanie wszystkich zależności zajmuje około 30 minut ...
Czy ktoś ma wskazówkę?
Odpowiedzi:
--verbose
Natknąłem się na ten sam problem, używając, jak wspomniał peterh, pokazało mi źródło problemu: jestem za proxy, które używa własnych certyfikatów dla połączeń https. Według użytkownika „Mletter1” na https://github.com/npm/npm/issues/8872 problem można dość łatwo rozwiązać za pomocą http:npm config set registry http://registry.npmjs.org/ --global
I voilà, znowu jest szybki. Oczywiście powinieneś to zrobić tylko wtedy, gdy nie masz nic przeciwko informacjom npm w postaci zwykłego tekstu przez sieć ;-)
źródło
Zrzeczenie się. Obawy dotyczące bezpieczeństwa: mam nadzieję, że wiesz, co pobierasz do folderu node_modules, prawda;)
Kompilacje Od wieczności → do 5 sekund :
tutaj dodaj te dwie ścieżki do listy wykluczonych folderów ochrony w czasie rzeczywistym :
C:\Program Files\nodejs C:\Users\<your username>\AppData\Roaming\npm
PS : zastąp
<your username>
odpowiednią nazwą folderu użytkownika .Jeśli zastanawiasz się, dlaczego nie możesz znaleźć folderu AppData w Eksploratorze, sprawdź opcje Wyświetl dla ukrytych folderów.
źródło
Od jakiegoś czasu mam ten sam problem. Wypróbowałem następujące
Instalacja utknęłaby w tym na zawsze. Jednak dodanie flagi -verbose działało dobrze.
źródło
-verbose
ma to znaczenie?Wiem, że to tylko obejście , ale spróbuj użyć wbudowanego „ Windows PowerShell ”
źródło
cmd.exe
i PowerShell dla mnie.Wygląda na to, że npm nie radzi sobie dobrze z połączeniami internetowymi i czasami może skończyć się taką sytuacją.
1) Radzę ci sprawdzić, czy twoja zapora sieciowa lub program antywirusowy nie wykonuje żadnego skanowania lub filtrowania, co może spowolnić instalację npm.
2) Możesz także użyć buforowania z npm jak poniżej.
npm install package-name --cache "c:\path\to\use\as\dependencies\cache"
pozwoli to na zależności pobierania npm i pamięci podręcznej w określonym katalogu.
3) innym rozwiązaniem do buforowania zależności pakietów npm jest npm leniwy , możesz znaleźć więcej informacji na ten temat pod adresem stronie npm Lazy
Uwaga: proces buforowania może, ale nie musi, poprawić prędkość pobierania, ale prawdopodobnie zaoszczędzi czas pobierania podczas instalowania lub aktualizowania pakietów npm.
źródło
Wyłączenie Zapory systemu Windows i programu Windows Defender Ochrona w czasie rzeczywistym zrobiło to za mnie w systemie Windows 10.
źródło
Wydaje mi się, że to problem z IPv6.
Wyłączenie IPv6 bardzo mi pomogło.
Po włączeniu protokołu IPv6 „pakiet aktualizacji newtonsoft.json” upłynął czas 1:45 i pojawił się błąd „pakiet-aktualizacji: zadanie zostało anulowane”.
Przy wyłączonym IPv6 „pakiet aktualizacji newtonsoft.json” ukończono w 10 sekund
źródło
Napotkałem ten sam problem podczas tworzenia projektu podczas korzystania z kątowego kliknięcia „ng new PROJECT_NAME”, to polecenie uruchamia polecenie „npm -install” po utworzeniu projektu, którego instalacja trwała zbyt długo, i utknęło na etapie „Instalowanie pakietów do narzędzi przez npm”. Postępuj zgodnie z tymi, które zadziałały dla mnie
1) Sprawdź swoją wersję npm „npm --version” (musi być nowsza niż 2.1.8) Zaktualizuj swój pakiet npm przez „npm -g install --save latest-version”
2) Usuń pasek postępu, który pochłania więcej czasu „npm set progress = false”
sprawdź te problemy, jeśli nadal nie rozwiążesz problemu https://github.com/nodejs/node/issues/4150 https://github.com/npm/npm/issues/11283
Mamy nadzieję, że to rozwiązuje problem. Na zdrowie!
źródło
Pomogło mi wyłączenie zapory systemu Windows Defender.
Ponieważ po prostu nie czuję się dobrze, najpierw dodałem WIFI do sieci prywatnej (przez ustawienia WIFI) i wyłączyłem program Windows Defender tylko dla sieci prywatnej zamiast wszystkich sieci publicznych.
Następnym krokiem powinno być: jaki ruch sieciowy to powoduje i jak dodać to do reguły wyjątku programu Windows Defender :)
źródło
Wypróbowałem wszystkie konfiguracje (proxy, rejestr itp.), Nic nie działało, więc wykonałem pełną dezinstalację i instalację node & npm. Co pomogło rozwiązać problem.
źródło
Całkowite wyłączenie ochrony przed wirusami i zaporą nie jest najbezpieczniejszą opcją. Chociaż przyspiesza to, stajesz się bardziej podatny na ataki.
W moim przypadku wykluczyłem tylko proces node.exe w ochronie przed wirusami i zagrożeniami.
tylko prosta aplikacja create-react-app spadła z 2 min 40 s do 1 min 10 s Polecenia npm są również wykonywane przez node.exe, więc zauważono tam te same ulepszenia.
źródło
Upewnij się, że naprawdę używasz najnowszej wersji npm. W moim przypadku
C:\Program Files\nodejs\npm.cmd
korzystałem ze staregonpm-cli.js
poniżej domyślnegoprefix
folderu%appdata%\npm
zamiast nowszegonpm-cli.js
poniżejC:\Program Files\nodejs
.Ustawienie zmiennej środowiskowej,
npm_config_prefix
aby toC:\Program Files\nodejs
rozwiązać. (Przed znalezieniem tego rozwiązania próbowałem użyć--prefix
argumentu i odkryłem na własnej skórze, że robi to „ wymusza wykonywanie poleceń nieglobalnych w określonym folderze ” ).Zauważyłem ogromny wzrost wydajności z 3.10.9 do 6.13.4 - wystarczająco, aby
npm install
czasy były akceptowalne pomimo interferencji ze strony antywirusa.źródło
Właśnie przeszedłem przez króliczą norę, próbując zidentyfikować problem. Jeśli instalacja npm nadal staje się wąska, powinieneś poważnie rozważyć modyfikację właściwości wirtualnej sieci Ethernet i wyłączenie całego odciążania .
Miałem 0 serwerów proxy lub problemy z buforowaniem w npm.
Zobacz tutaj samouczek, jak dostać się do menu i wyłączyć ustawienia odciążania. Upewnij się, że robisz to zarówno dla swojej sieci Ethernet, jak i VEthernet, a od razu zauważysz różnicę. Przeszedłem od 10-minutowego zawieszenia, które czasami po prostu się zatrzymywało, do 10-sekundowych instalacji. https://www.dincloud.com/blog/tuning-windows-get-15x-speeds-on-large-file-copies-today
źródło