【发布时间】:2015-10-30 20:30:26
【问题描述】:
当我在 Visual Studio 2015 中打开带有 package.json 的项目时,会自动启动 npm 安装,并且 VS 在安装完成之前无响应。
我宁愿自己从命令行运行 npm install;如何阻止 Visual Studio 这样做?
【问题讨论】:
标签: node.js visual-studio npm visual-studio-2015
当我在 Visual Studio 2015 中打开带有 package.json 的项目时,会自动启动 npm 安装,并且 VS 在安装完成之前无响应。
我宁愿自己从命令行运行 npm install;如何阻止 Visual Studio 这样做?
【问题讨论】:
标签: node.js visual-studio npm visual-studio-2015
试试这个:
似乎没有必要关闭解决方案等。 NPM 和 Bower 功能现在在 VS 中被禁用,但在命令行上可以正常工作(假设您已经全局安装了 npm、bower 等)。您可能会在输出窗口中收到一些错误消息,但没有构建错误或警告。
要恢复正常操作,请返回外部 Web 工具并单击右下角的“重置为默认值”。
我没有在 Publish 中尝试过这个 - 您可能需要恢复默认值才能成功发布,如果您在此时遇到错误,请尝试一下。
【讨论】:
如果您升级到 Visual Studio 2017(免费的“社区版”很好),那么 VS 团队添加了一个选项,可以在打开项目时停止 npm 运行。它位于工具/选项/项目和解决方案/Web 包管理/包还原下。您可以在 Project Open 和 package.json Save 上分别禁用 NPM(和 Bower)恢复。
另请注意,对于 node.js 项目类型 (NTVS)仅,目前在 VS2017 中完全禁用自动包还原行为。
编辑:上述答案也适用于 Visual Studio 2019。菜单选项位于同一位置,但不推荐使用 Bower 支持。
【讨论】:
Visual Studio 2015 Update 2 修复了这个问题!安装更新 2,您应该一切顺利。
直接下载:http://go.microsoft.com/fwlink/?LinkId=691129
更新 2 发行说明:https://www.visualstudio.com/news/releasenotes/vs2015-update2-vs
编辑:“fixed”可能并不完全准确,也可能并非对所有用户都完全fixed。也许我们可以确定每个人的经历。澄清一下,我的经验如下:
根据我的经验,如果 node_modules 文件夹中缺少 package.json 中的任何依赖项(或者如果文件夹本身丢失),则在打开 .sln 时,补丁后 VS 将运行“npm install”。
您不能禁用“npm install”,因此“fixed”可能并不完全正确 - 但是,它不会像以前那样在每次启动时都这样做,所以我认为这是一个胜利。人们可以确认这是行为,还是我们正在经历不同的行为?
【讨论】: