Jak mogę wyłączyć przywracanie pakietów NPM w programie Visual Studio 2015?

82

Gdy otwieram projekt z pakietem.json w programie Visual Studio 2015, instalacja npm jest uruchamiana automatycznie, a program VS nie odpowiada, dopóki instalacja nie zostanie zakończona.

Wolałbym raczej uruchomić npm install sam z wiersza poleceń; jak mogę powstrzymać program Visual Studio od robienia tego?

Geir Sagberg
źródło

Odpowiedzi:

76

W przypadku uaktualnienia do programu Visual Studio 2017 (bezpłatna „Community Edition” jest w porządku), zespół VS dodał opcję zatrzymania działania npm po otwarciu projektu. Znajduje się w obszarze Narzędzia / Opcje / Projekty i rozwiązania / Zarządzanie pakietami sieciowymi / Przywracanie pakietów. Możesz wyłączyć przywracanie NPM (i Bower) w Project Open i Package.json Zapisz oddzielnie.

Należy również zauważyć, że w przypadku typów projektów node.js (NTVS) tylko automatyczne przywracanie pakietów jest obecnie całkowicie wyłączone w VS2017.

Edycja: powyższa odpowiedź dotyczy również programu Visual Studio 2019. Opcje menu znajdują się w tym samym miejscu, chociaż obsługa Bower została wycofana.

Rich N.
źródło
Czy istnieje trwałe rozwiązanie? Zastosowałem to, a następnie zaktualizowałem VS2019 i boom, ponownie
włączono
78

Spróbuj tego:

  • Otwórz Narzędzia -> Opcje
  • Wybierz Projekty i rozwiązania / Zewnętrzne narzędzia internetowe
  • Odznacz wszystkie cztery ścieżki
  • Kliknij OK

Nie wydaje się, aby zamykanie rozwiązania itp. Było konieczne. Funkcjonalności NPM i Bower są teraz wyłączone w VS, ale będą działać dobrze w wierszu poleceń (zakładając, że globalnie zainstalowałeś npm, bower itp.) W oknie Wyjście mogą pojawić się komunikaty o błędach, ale bez błędów kompilacji ani ostrzeżeń.

Aby przywrócić normalne działanie, wróć do zewnętrznych narzędzi internetowych i kliknij „Przywróć domyślne” w prawym dolnym rogu.
Nie próbowałem tego z publikowaniem - być może będziesz musiał przywrócić ustawienia domyślne, aby pomyślnie opublikować, spróbuj, jeśli napotkasz błędy w tym momencie.

Van Kichline
źródło
1
Chociaż dostaję pewne błędy w danych wyjściowych, np. Task Runner Explorer nie znajduje Gulp itp., Myślę, że jest to oczekiwane. To z pewnością
załatwia sprawę
28
To dość śmieszne, że nie możesz wyłączyć tej opcji. :(
Sean Anderson
4
+1 VS jest wystarczająco powolne bez integracji git i npm. Lepiej używać VS Code / Sublime / Webstorm dla projektów związanych z JS.
cchamberlain
1
Korzystanie z VS Community 2017 15.5.6. To faktycznie działa, ale nie trzeba ponownie uruchomić Visual Studio w celu uczynienia go zatrzymać przywracanie pakietów KMP.
rsenna
Czy istnieje trwałe rozwiązanie? Zastosowałem to, a następnie zaktualizowałem VS2019 i boom, ponownie
włączono
4

Visual Studio 2015 Update 2 rozwiązało ten problem! Zainstaluj aktualizację 2 i już powinno być.

Bezpośrednie pobieranie: http://go.microsoft.com/fwlink/?LinkId=691129
Informacje o wydaniu aktualizacji 2: https://www.visualstudio.com/news/releasenotes/vs2015-update2-vs

Edycja : „ naprawiona ” może nie być całkowicie dokładna i może nie zostać całkowicie naprawiona dla wszystkich użytkowników. Może uda nam się określić, czego wszyscy doświadczają. Aby wyjaśnić, moje doświadczenie było następujące:

  • Przed aktualizacją 2, VS uruchamiał „npm install” za każdym razem, gdy otwierałem plik .sln, co było bardzo trudne.
  • Po aktualizacji 2 VS uruchamia `` instalację npm '' w niektórych scenariuszach, co jest tolerowane (z mojego doświadczenia).

Z mojego doświadczenia wynika, że ​​po zainstalowaniu poprawki VS po otwarciu pliku .sln uruchomi `` npm install '', jeśli w folderze node_modules brakuje którejkolwiek z zależności w pliku package.json (lub jeśli brakuje samego folderu).

Nie możesz wyłączyć `` instalacji npm '', więc `` naprawiona '' może nie być całkiem poprawna - jednak nie robi tego przy każdym uruchomieniu, jak poprzednio, więc uważam to za wygraną. Czy ludzie mogą potwierdzić, że jest to zachowanie, czy też doświadczamy innych zachowań?

Ashlin Allen
źródło
Chociaż ten link może odpowiedzieć na pytanie, lepiej jest zawrzeć tutaj zasadnicze części odpowiedzi i podać link do odniesienia. Odpowiedzi zawierające tylko łącze mogą stać się nieprawidłowe, jeśli połączona strona ulegnie zmianie. - Z recenzji
Alessandro Cuttin
1
Link nie zawiera odpowiedzi, służy tylko do pobrania aktualizacji oprogramowania. Zmieniłem łącze, aby prowadziło bezpośrednio do pobierania, zamiast uwag o aktualizacji. Czy to dopuszczalne?
Ashlin Allen
2
Nie nazwałbym tego naprawionym, sprawili, że ekran jest mniej podatny na blokowanie lub awarię, ale jeśli ręcznie poradzisz sobie z npm, pojawi się w walkach z automatycznym przywracaniem vs, a nadal nie ma opcji, aby go wyłączyć afaik .
npjohns
Mam program Visual Studio 2015 Update 2 i nadal próbuje uruchomić instalację npm i gulp. Nie jestem pewien, czy to rozwiąże problem.
Jamie McCrindle
Zmieniłem moją odpowiedź, czy widzisz, że uruchamia się ona również jako „instalacja npm” w konkretnym scenariuszu, o którym wspomniałem, czy też działa on innym razem? Jeśli chodzi o Gulp, spróbuję się w to zagłębić ... moja obecna konfiguracja używa WebPacka, a VS uruchamia WebPacka tylko wtedy, gdy mam skonfigurowanego do tego Task Runner Explorer. VS korzysta z Gulp nawet bez skonfigurowanego TRE?
Ashlin Allen