Visual Studio 2015에서 NPM 패키지 복원을 비활성화하려면 어떻게해야합니까?


82

Visual Studio 2015에서 package.json을 사용하여 프로젝트를 열면 npm 설치가 자동으로 시작되고 설치가 완료 될 때까지 VS가 응답하지 않습니다.

명령 줄에서 직접 npm 설치를 실행하는 것이 훨씬 더 좋습니다. Visual Studio에서 작업을 중지하려면 어떻게해야합니까?

답변:


76

Visual Studio 2017로 업그레이드하는 경우 (무료 '커뮤니티 에디션'은 괜찮음) VS 팀은 프로젝트가 열릴 때 npm 실행을 중지하는 옵션을 추가했습니다. 도구 / 옵션 / 프로젝트 및 솔루션 / 웹 패키지 관리 / 패키지 복원 아래에 있습니다. Project Open 및 package.json 저장에서 NPM (및 Bower) 복원을 개별적으로 비활성화 할 수 있습니다.

또한 node.js 프로젝트 유형 (NTVS)의 경우 현재 VS2017 에서는 자동 패키지 복원 동작 완전히 비활성화되어 있습니다.

편집 : 위의 답변은 Visual Studio 2019에도 적용됩니다. Bower 지원이 더 이상 사용되지 않지만 메뉴 옵션은 같은 위치에 있습니다.


영구적 인 해결책이 있습니까? 나는 이것을 적용한 다음 VS2019와 붐을 업그레이드하고 NPM을 다시 활성화했습니다.
amartin1911

78

이 시도:

  • 도구 열기-> 옵션
  • 프로젝트 및 솔루션 선택 / 외부 웹 도구
  • 네 경로 모두 선택 취소
  • 확인 클릭

솔루션을 닫는 등의 작업이 필요하지 않은 것 같습니다. NPM 및 Bower 기능은 이제 VS에서 비활성화되었지만 명령 줄에서 잘 작동합니다 (전역 적으로 npm, bower 등을 설치했다고 가정). 출력 창에 일부 오류 메시지가 표시되지만 빌드 오류나 경고는 표시되지 않습니다.

정상 작동을 복원하려면 외부 웹 도구로 돌아가 오른쪽 하단의 "기본값으로 재설정"을 클릭하십시오.
게시와 함께 시도하지 않았습니다. 성공적으로 게시하려면 기본값을 복원해야 할 수 있습니다. 해당 시점에서 오류가 발생하면 시도해보세요.


1
출력에 오류가 발생하지만, 예를 들어 Task Runner Explorer가 Gulp를 찾지 못하는 등의 오류가 발생하지만 이것이 예상되는 것 같습니다. 이것은 확실히 트릭, 감사합니다 :) 않습니다
이르 Sagberg

28
이 옵션을 비활성화 할 수 없다는 것은 매우 우스꽝 스럽습니다. :(
Sean Anderson

4
+1 VS는 git 및 npm 통합 없이는 충분히 느립니다. JS 관련 프로젝트에 VS Code / Sublime / Webstorm을 사용하는 것이 좋습니다.
cchamberlain 2016 년

1
VS Community 2017 사용 15.5.6. 이것은 실제로 작동,하지만 난 않았다 가 NPM 패키지를 복원 멈추게하기 위해 Visual Studio를 다시 시작해야합니다.
rsenna

영구적 인 해결책이 있습니까? 나는 이것을 적용한 다음 VS2019 및 붐을 업그레이드하고 NPM을 다시 활성화했습니다.
amartin1911

4

Visual Studio 2015 업데이트 2가이 문제를 해결했습니다! 업데이트 2를 설치하면 좋습니다.

직접 다운로드 : http://go.microsoft.com/fwlink/?LinkId=691129
업데이트 2 릴리스 정보 : https://www.visualstudio.com/news/releasenotes/vs2015-update2-vs

수정 : " fixed "는 완전히 정확하지 않을 수 있으며 모든 사용자에 대해 완전히 수정 되지 않을 수 있습니다 . 모두가 겪고있는 일을 정확히 파악할 수있을 것입니다. 명확히하기 위해 내 경험은 다음과 같습니다.

  • 업데이트 2 이전에는 VS가 .sln을 열 때마다 'npm install'을 실행 했는데 대처하기가 매우 어려웠습니다.
  • 업데이트 2 이후 VS는 특정 시나리오에서 'npm install'을 실행하는데, 이는 내 경험상 허용됩니다.

내 경험상, post-patch VS는 .sln을 열 때 package.json의 종속성이 node_modules 폴더에서 누락 된 경우 (또는 폴더 자체가 누락 된 경우) 'npm install'을 실행합니다.

'npm install'을 비활성화 할 수 없으므로 'fixed'가 정확하지 않을 수 있습니다. 그러나 이전과 같이 매번 시작할 때마다 수행하지 않으므로 승리라고 생각합니다. 사람들이 이것이 행동인지 확인할 수 있습니까, 아니면 다른 행동을 경험하고 있습니까?


이 링크가 질문에 답할 수 있지만 여기에 답변의 필수 부분을 포함하고 참조 용 링크를 제공하는 것이 좋습니다. 링크 된 페이지가 변경되면 링크 전용 답변이 무효화 될 수 있습니다. - 검토에서
알레산드로 해부 할

1
링크에는 답변이 포함되어 있지 않으며 소프트웨어 업데이트 다운로드를 위해서만 있습니다. 업데이트 노트 대신 다운로드에 직접 연결되도록 링크를 변경했습니다. 허용됩니까?
Ashlin Allen

2
나는 그것을 고정이라고 부르지 않고 화면이 잠기거나 충돌 할 가능성을 줄 였지만 수동으로 npm을 처리하면 vs 자동 복원과 싸울 것이며 여전히 비활성화 할 수있는 옵션이 없습니다. .
npjohns

Visual Studio 2015 업데이트 2가 있으며 여전히 npm 설치 및 꿀꺽 꿀꺽 실행을 시도합니다. 이것이 문제를 해결하는지 확실하지 않습니다.
Jamie McCrindle

내 대답을 편집했는데 내가 언급 한 특정 시나리오에서 'npm install'이 실행되는 것을 보십니까? 아니면 다른 시간에 실행됩니까? Gulp에 관해서는 파헤쳐 보겠습니다. 현재 설정은 Webpack을 사용하고 있으며 VS는 Task Runner Explorer가 구성되어있는 경우에만 Webpack을 실행합니다. VS가 TRE를 실행하도록 구성하지 않아도 Gulp를 실행하고 있습니까?
Ashlin Allen
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.