如何在Visual Studio 2015中禁用NPM软件包还原?


82

当我在Visual Studio 2015中打开一个带有package.json的项目时,将自动启动npm安装,并且VS在安装完成之前无响应。

我宁愿从命令行运行npm install自己;如何停止Visual Studio执行此操作?

Answers:


76

如果您升级到Visual Studio 2017(免费的“社区版”很好),则VS团队添加了一个选项,可以在打开项目时停止npm运行。它位于工具/选项/项目和解决方案/ Web软件包管理/软件包还原下。您可以分别在Project Open和package.json上禁用NPM(和Bower)还原。

另请注意,目前对于VS2017中的node.js项目类型(NTVS),自动软件包还原行为已完全禁用。

编辑:上面的答案也适用于Visual Studio2019。尽管不赞成使用Bower,但菜单选项位于同一位置。


有永久解决方案吗?我应用了此功能,然后升级了VS2019和繁荣时期,再次启用了NPM
amartin1911

78

试试这个:

  • 打开工具->选项
  • 选择项目和解决方案/外部Web工具
  • 取消选中所有四个路径
  • 点击确定

似乎没有必要关闭解决方案等。现在,VS中已禁用NPM和Bower功能,但在命令行上可以正常使用(假设您已全局安装了npm,bower等)。在“输出”窗口中可能会收到一些错误消息,但没有构建错误或警告。

要恢复正常操作,请返回到外部Web工具,然后单击右下方的“重置为默认值”。
我还没有尝试使用发布-您可能必须恢复默认设置才能成功发布,如果此时遇到错误,请尝试使用它。


1
虽然我在输出中确实遇到了一些错误,例如Task Runner Explorer找不到Gulp等,但我想这是可以预期的。这肯定可以解决问题,谢谢:)
Geir Sagberg

28
您无法禁用此选项是非常荒谬的。:(
肖恩安德森

4
没有git和npm集成,+ 1 VS足够慢。最好将VS Code / Sublime / Webstorm用于JS相关项目。
cchamberlain

1
使用VS Community 2017 15.5.6。其实,这工作,但我不得不重新启动Visual Studio,以使其停止恢复NPM包。
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

编辑:“固定”可能并不完全准确,并且可能并非对所有用户都完全固定。也许我们可以确定每个人的经历。澄清一下,我的经验如下:

  • 在Update 2之前,每次我打开.sln时,VS都会运行“ npm install” ,这很难解决。
  • 在Update 2之后,VS在某些情况下可以运行“ npm install”(根据我的经验)。

以我的经验,如果node.modules文件夹中缺少package.json中的任何依赖项(或者如果文件夹本身不存在),则打开.sln后,补丁后VS将运行'npm install'。

您不能禁用'npm install',因此'fixed'可能不太正确-但是,它并没有像以前那样在每次启动时都这样做,因此我认为这是一个成功。人们可以确认这是行为,还是我们正在经历不同的行为?


虽然此链接可以回答问题,但最好在此处包括答案的基本部分,并提供链接以供参考。如果链接的页面发生更改,仅链接的答案可能会失效。-评分
亚历山德罗Cuttin

1
该链接不包含答案,仅在此处提供软件更新下载。我将链接更改为直接链接到下载,而不是更新说明。可以接受吗?
Ashli​​n Allen

2
我不会将其称为固定的,它们使屏幕不太可能锁定或崩溃,但是如果您手动处理npm,它将与vs auto restore发生冲突,并且仍然没有禁用它的选项。
npjohns

我有Visual Studio 2015 Update 2,它仍然尝试运行npm install和gulp。我不确定这是否可以解决问题。
Jamie McCrindle '16

我已经编辑了答案,在我提到的特定情况下,您是否还看到它运行'npm install'还是在其他时间运行?至于Gulp,我将尝试深入探讨……我当前的设置使用的是Webpack,而VS仅在配置了Task Runner Explorer的情况下才运行Webpack。VS是否在没有配置TRE的情况下运行Gulp?
Ashli​​n Allen
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.