【问题标题】:How can I disable NPM package restore in Visual Studio 2015?如何在 Visual Studio 2015 中禁用 NPM 包还原?
【发布时间】: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


    【解决方案1】:

    试试这个:

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

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

    要恢复正常操作,请返回外部 Web 工具并单击右下角的“重置为默认值”。
    我没有在 Publish 中尝试过这个 - 您可能需要恢复默认值才能成功发布,如果您在此时遇到错误,请尝试一下。

    【讨论】:

    • 虽然我在输出中确实遇到了一些错误,例如Task Runner Explorer 没有找到 Gulp 等,我想这是意料之中的。这当然可以,谢谢:)
    • 不能禁用这个选项真是太可笑了。 :(
    • +1 VS 在没有 git 和 npm 集成的情况下足够慢。 JS 相关项目最好使用 VS Code / Sublime / Webstorm。
    • 使用 VS 社区 2017 15.5.6。这确实有效,但我确实必须重新启动 Visual Studio 才能停止恢复 npm 包。
    • 有永久的解决方案吗?我已经应用了这个,然后升级了 VS2019 和繁荣,NPM 再次启用
    【解决方案2】:

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

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

    编辑:上述答案也适用于 Visual Studio 2019。菜单选项位于同一位置,但不推荐使用 Bower 支持。

    【讨论】:

    • 有永久的解决方案吗?我已经应用了这个,然后升级了 VS2019 和繁荣,NPM 再次启用
    【解决方案3】:

    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。也许我们可以确定每个人的经历。澄清一下,我的经验如下:

    • 在更新 2 之前,VS 会在我每次打开时运行“npm install”每次 .sln,很难应付。
    • 在更新 2 之后,VS 在某些情况下运行“npm install”,这是可以忍受的(根据我的经验)。

    根据我的经验,如果 node_modules 文件夹中缺少 package.json 中的任何依赖项(或者如果文件夹本身丢失),则在打开 .sln 时,补丁后 VS 将运行“npm install”。

    您不能禁用“npm install”,因此“fixed”可能并不完全正确 - 但是,它不会像以前那样在每次启动时都这样做,所以我认为这是一个胜利。人们可以确认这是行为,还是我们正在经历不同的行为?

    【讨论】:

    • 虽然此链接可能会回答问题,但最好在此处包含答案的基本部分并提供链接以供参考。如果链接页面发生更改,仅链接答案可能会失效。 - From Review
    • 该链接不包含答案,仅用于下载软件更新。我将链接更改为直接链接到下载,而不是更新说明。这可以接受吗?
    • 我不会说它是固定的,他们使屏幕不太可能锁定或崩溃,但是如果您手动处理 npm,它将与 vs 自动恢复发生冲突,并且仍然存在'不是禁用它的选项。
    • 我有 Visual Studio 2015 Update 2,它仍然尝试运行 npm install 和 gulp。我不确定这是否能解决问题。
    • 我已经编辑了我的答案,您是否也看到它在我提到的特定场景中运行“npm install”,还是在其他时间运行?至于 Gulp,我将尝试深入研究……我当前的设置是使用 Webpack,而 VS 仅在我配置了 Task Runner Explorer 时才运行 Webpack。 VS 在没有配置 TRE 运行 Gulp 的情况下运行它?
    猜你喜欢
    • 2015-03-23
    • 1970-01-01
    • 2016-10-07
    • 2015-03-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多