Visual Studio Code 常见问题解答
发布时间:2026-08-30 | 浏览:1
📼 重温 MS Build 2026 上的 VS Code Live
我们的文档在需要针对特定主题时包含一个 常见问题 部分。我们在此收录了不适合归入其他主题的内容。
如果在这里找不到您问题的答案,请查看我们之前在 GitHub 上报告的问题 以及我们的 发行说明 。
在 VS Code 中开源 AI
我们已在 MIT 许可证下开源了 GitHub Copilot Chat 扩展,并将相关组件引入 VS Code 核心。请阅读我们的 公告博客文章 和 首个里程碑更新 了解所有详情。
这会影响我当前的 GitHub Copilot 订阅吗?GitHub Copilot 现在是免费的吗?
此更改不会影响当前的 GitHub Copilot 订阅。要使用 GitHub Copilot,您仍然需要同时拥有 GitHub 账户和 GitHub Copilot 订阅权限。
无法通过组织或企业获得 Copilot 访问权限的个人开发者可以使用 GitHub Copilot 免费计划 ( 可能适用限制条件 )。如果该计划无法满足您的需求,您可以注册 Copilot 付费计划或 使用您自己的模型密钥 。
GitHub Copilot 后端服务也会开源吗?
GitHub Copilot 服务不受影响,并将继续保持闭源。
时间线是什么样的?我什么时候可以为 VS Code 中的 AI 体验做出贡献?
我们通过开源 GitHub Copilot Chat 扩展, 完成了此过程的第一步 。其源代码可在 microsoft/vscode-copilot-chat 仓库中找到。
在接下来的几个月中,我们将把 Copilot Chat 扩展的相关组件引入 VS Code 核心仓库。有关时间线的详细信息和更新,请查看我们的 计划项 。
我们的目标是让为 AI 功能贡献代码的体验变得像为 VS Code 的任何其他部分贡献代码一样简单。作为其中的一部分,我们希望在贡献时能够使用 Copilot 后端服务进行调试和测试。有关如何贡献的详细信息,请查看 CONTRIBUTING.md 文件。
为什么要将 GitHub Copilot 集成到 VS Code 核心仓库中?
自 GitHub Copilot 首次发布以来,很明显,AI 驱动的工具已成为我们编写代码的核心方式。从使用遥测数据中我们可以看出,实际在 VS Code 中使用 AI 功能的用户比使用调试或测试等其他某些功能的用户还要多。
将 AI 功能作为 VS Code 的核心部分,再次确认了我们的信念:公开透明地开发能为用户带来更好的产品,并培育多样化的扩展生态系统。
我是一名扩展开发者。我受影响吗?
我们为稳定版 API 保持向后兼容性。您的扩展不应受到任何影响。我们会根据扩展开发者的反馈不断演进和扩展 VS Code 扩展 API。如果您需要额外的 API 来让您的扩展成功运行,我们非常乐意倾听您的意见——请在 microsoft/vscode 仓库 中提交 API 请求。
我已经在 VS Code 中使用了其他 AI 编码扩展(Cline、Roo Code 等)。这对我有什么影响?
您可以继续在 VS Code 中使用这些扩展!我们很高兴社区构建了各种扩展来改善 VS Code 中的开发体验。为了改善其他 AI 扩展的体验,我们不断添加各种 API,例如用于从扩展中直接调用语言模型的 Language Model API,用于与语言模型工具交互并集成内置或自定义智能体的 Tools API,以及用于运行和交互终端命令的 Shell Execution API(对智能体体验尤其有用)。未来,我们计划添加更多 API 以满足扩展开发者的需求。
这会改变你们收集数据的方式吗?
不会,没有任何改变。通过开源 GitHub Copilot Chat,我们让数据收集方式完全透明,并使您能够在源代码中进行验证。了解有关 VS Code 中的遥测 以及 GitHub Copilot 信任中心 的更多信息。
在未来的版本中,VS Code 团队将如何在 AI 功能和非 AI 功能之间进行优先级排序?
我们坚信,AI 驱动的工具是编写代码的核心。我们在 AI 功能和改善核心编辑器体验方面都有所投入。这也体现在团队工作分配上——50% 的精力投入在 AI,50% 投入在其他功能。许多非 AI 功能对用户来说可能并不总是那么明显,例如性能、安全性、无障碍性、Electron 更新等。
将 AI 功能引入 VS Code 核心仓库会影响 VS Code 的(启动)性能吗?
性能是我们的核心优先级,我们致力于在集成 AI 功能的同时保持 VS Code 的性能。此外,如果您未在 VS Code 中启用 AI 功能,则不会运行任何可能影响性能的相关后台进程。
我可以在 VS Code 中禁用 AI 功能吗?
您可以使用 chat.disableAIFeatures 在 VS Code 中打开 在 VS Code Insiders 中打开 设置来禁用 VS Code 中的内置 AI 功能,这与您在 VS Code 中配置其他功能的方式类似。这会禁用并隐藏 VS Code 中的聊天或内联建议等功能,并禁用 Copilot 扩展。您可以在工作区或用户级别配置此设置。
或者,从标题栏的聊天菜单中使用 了解如何隐藏 AI 功能 操作来访问此设置。
如果您之前已禁用内置 AI 功能,在更新到新版本的 VS Code 时,您的选择将得到尊重。
如果我禁用了 VS Code 中的 AI 功能,我的数据还会发送给微软吗?
不会。如果您在 VS Code 中禁用了 AI 功能,或者未从 VS Code 登录您的 Copilot 订阅,您的数据将不会发送到 Copilot 后端服务。了解有关 VS Code 中的遥测 以及 GitHub Copilot 信任中心 的更多信息。
VS Code 在 Copilot 扩展中使用的模型是开源的(OSS)吗?
不是。GitHub Copilot 使用的模型是单独授权的,这一点没有改变。事实上,其中大多数模型都来自第三方,例如 OpenAI、Anthropic 和 Google...
Visual Studio Code 和 Visual Studio IDE 有什么区别?
Visual Studio Code 是一款精简的代码编辑器,支持调试、任务运行和版本控制等开发操作。它旨在提供开发者进行快速“编写-构建-调试”循环所需的工具,而将更复杂的的工作流留给功能更全的 IDE,例如 Visual Studio IDE 。
是的,VS Code 免费用于私人或商业用途。有关详细信息,请参阅 产品许可证 。
如果您还没有 Copilot 订阅,您可以通过注册 Copilot 免费计划 来免费使用 Copilot,并获得每月的内联建议和 AI 配额。
VS Code 运行在 macOS、Linux 和 Windows 上。支持的版本请参见 系统要求文档 。您可以在 安装概述 中找到更多特定平台的详细信息。
我可以在较旧的 Windows 版本上运行 VS Code 吗?
微软已结束对 Windows 7 、 Windows 8 和 Windows 8.1 的支持,并且不再提供安全更新。自 1.71 版本(2022 年 8 月)起,VS Code 桌面版不再在 Windows 7 上运行;自 1.80 版本(2023 年 6 月)起,不再在 Windows 8 和 8.1 上运行。您需要升级到较新的 Windows 版本才能使用更高版本的 VS Code。
VS Code 将不再在旧版 Windows 上提供产品更新或安全修复。VS Code 1.70.3 版本 是 Windows 7 用户的最后一个可用版本,而 1.79 版本将是 Windows 8 和 8.1 用户的最后一个可用版本。您可以访问 support.microsoft.com 了解更多关于升级 Windows 版本的信息。
此外,Windows 10 2004 及更高版本已停止对 32 位 OEM 的支持。支持 Windows 32 位的最后一个稳定版 VS Code 是 1.83(2023 年 9 月)。您需要更新到 64 位版本。
我可以在较旧的 macOS 版本上运行 VS Code 吗?
从 1.105 版本(2025 年 9 月)开始,VS Code 桌面版将弃用对 macOS Big Sur(11.0 及更旧版本)的支持。从 VS Code 1.107(2025 年 11 月)开始,我们将停止在 macOS Big Sur(11.0 及更旧版本)上更新 VS Code。您需要升级到较新的 macOS 版本才能使用更高版本的 VS Code。
VS Code 将不再在 macOS Big Sur(11.0 及更旧版本)上提供产品更新或安全修复,VS Code 1.106 版本将是 macOS Big Sur(11.0 及更旧版本)的最后一个可用版本。您可以访问 support.apple.com 了解更多关于升级 macOS 版本的信息。
我可以在较旧的 Linux 发行版上运行 VS Code 吗?
从 VS Code 1.86.1 版本(2024 年 1 月)开始,VS Code 桌面版仅兼容基于 glibc 2.28 或更高版本的 Linux 发行版,例如 Debian 10、RHEL 8 或 Ubuntu 20.04。
如果您无法升级 Linux 发行版,推荐的替代方案是使用我们的 网页客户端 。如果您想使用桌面版,可以从 此处 下载 VS Code 1.85 版本。根据您的平台,请确保禁用更新以停留在该版本。一个好的建议是通过 便携模式 进行安装设置。
我可以运行便携版的 VS Code 吗?
可以,VS Code 具有 便携模式 ,可让您将设置和数据保存在与安装位置相同的目录中,例如在 U 盘上。
VS Code 会收集使用数据并将其发送给微软,以帮助改进我们的产品和服务。请阅读我们的 隐私声明 和 遥测文档 了解详情。
如果您不想将使用数据发送给微软,可以将 telemetry.telemetryLevel 在 VS Code 中打开 在 VS Code Insiders 中打开 此设置可由您的组织管理。请联系您的管理员进行更改。 组织 用户 设置 设置为 off 。
从 文件 > 首选项 > 设置 ,搜索 telemetry ,并将 Telemetry: Telemetry Level 设置为 off 。这将关闭以后来自 VS Code 的所有遥测事件。
重要提示 :VS Code 允许您安装微软和第三方的扩展。这些扩展可能会收集其自己的使用数据,且不受 telemetry.telemetryLevel 在 VS Code 中打开 在 VS Code Insiders 中打开 此设置可由您的组织管理。请联系您的管理员进行更改。 组织 设置控制。请查阅特定扩展的文档以了解其遥测报告情况。
VS Code 使用实验来尝试新功能或逐步推出新功能。我们的实验框架会调用微软拥有的服务,因此当禁用遥测时,实验也会被禁用。但是,如果您希望无论遥测偏好如何都禁用实验,可以将 workbench.enableExperiments 在 VS Code 中打开 在 VS Code Insiders 中打开 用户 设置 设置为 false 。
从 文件 > 首选项 > 设置 ,搜索 experiments ,并取消勾选 Workbench: Enable Experiments 设置。这将防止 VS Code 调用该服务并退出任何正在进行的实验。
VS Code 会收集发生的任何崩溃的数据并将其发送给微软,以帮助改进我们的产品和服务。请阅读我们的 隐私声明 和 遥测文档 了解详情。
如果您不想将崩溃数据发送给微软,可以将 telemetry.telemetryLevel 在 VS Code 中打开 在 VS Code Insiders 中打开 此设置可由您的组织管理。请联系您的管理员进行更改。 组织 用户 设置 更改为 off 。
从 文件 > 首选项 > 设置 ,搜索 telemetry ,并将 Telemetry: Telemetry Level 设置为 off 。这将关闭来自 VS Code 的所有遥测事件,包括崩溃报告。您需要重新启动 VS Code 才能使设置更改生效。
既然《通用数据保护条例》(GDPR)已经生效,我们想借此机会重申,我们非常重视隐私。这不仅对微软这家公司而言如此,对于 VS Code 团队更是如此。
VS Code 产品会通知所有用户他们可以退出遥测收集。
团队会积极审查和分类所有发送的遥测数据(记录在 我们的开源代码库 中)。
针对收集的任何数据(例如崩溃转储),制定了有效的数据保留策略。
您可以在 遥测文档 中了解有关 VS Code 的 GDPR 合规性的更多信息。
VS Code 使用哪些在线服务?
除了崩溃报告和遥测之外,VS Code 还将在线服务用于各种其他目的,例如下载产品更新、查找、安装和更新扩展,或者在设置编辑器中提供自然语言搜索。您可以在 管理在线服务 中了解更多信息。
您可以选择开启/关闭使用这些服务的功能。从 文件 > 首选项 > 设置 ,并键入标签 @tag:usesOnlineServices 。这将显示控制在线服务使用的所有设置,您可以单独开启或关闭它们。
您可以在 VS Code 安装位置的 resources\app 文件夹下找到 VS Code 许可证、第三方声明和 Chromium 开源致谢名单。VS Code 的 ThirdPartyNotices.txt 、Chromium 的 Credits_*.html 以及 VS Code 的英文 LICENSE.txt 都位于 resources\app 目录下。按语言 ID 分类的本地化 LICENSE.txt 版本位于 resources\app\licenses 目录下。
为什么 Visual Studio Code 的许可证与 vscode GitHub 仓库的不同?
要了解为什么作为产品的 Visual Studio Code 与开源的 vscode GitHub 仓库 具有不同的许可证,请参阅 议题 #60 获取详细解释。
vscode 仓库与 Microsoft Visual Studio Code 发行版之间有什么区别?
github.com/microsoft/vscode 仓库( Code - OSS )是我们开发 Visual Studio Code 产品的地方。我们在那里编写代码、处理问题,还发布我们的路线图以及迭代和收尾计划。源代码在标准的 MIT 许可证 下对所有人开放。
Visual Studio Code 是 Code - OSS 仓库的一个发行版,包含微软特定的自定义项(包括源代码),根据传统的 微软产品许可证 发布。
有关更多详细信息,请参阅 Visual Studio Code 与 'Code - OSS' 的区别 一文。
Microsoft Visual Studio Code 是 'Code - OSS' 的一个 经微软授权 的发行版,其中包含微软专有资产(例如图标)和功能(Visual Studio 市场集成、启用远程开发的某些小方面)。虽然这些新增内容只占整个发行版代码库的极小一部分,但由于这些差异,说 Visual Studio Code 是“基于”开源构建,而不是“是”开源的,会更准确。有关每个发行版包含内容的更多信息,请参阅 Visual Studio Code 与 'Code - OSS' 的区别 一文。
所有的 VS Code 扩展都是开源的吗?
扩展开发者可以自由选择适合其业务需求的许可证。虽然许多扩展开发者选择在开源许可证下发布其源代码,但某些扩展(如 Wallaby.js 、 Google Cloud Code 和 VS Code 远程开发扩展 )使用的是专有许可证。
在微软,我们既有开源扩展,也有闭源扩展。对现有专有源代码或库的依赖、涉及微软许可工具或服务的源代码(例如 C# DevKit 扩展使用 Visual Studio 订阅许可证模型,参见 许可证 ),以及整个微软业务模型的差异,都可能导致扩展选择专有许可证。您可以在 微软扩展许可证 一文中找到微软贡献的 Visual Studio Code 扩展及其源代码许可证的列表。
大多数 extensions 在其市场页面(“Read Me”文档)的右侧栏 资源 (Resources) 下都有指向其许可证的链接。如果您找不到链接,如果扩展的仓库是公开的,您可能会在其中找到许可证,或者您可以通过市场的问答 (Q & A) 部分联系扩展开发者。
我可以在 VS Code 之外使用微软的扩展吗?
不。虽然微软某个扩展的源代码可能是开源的,但我们不授权将发布并获取自 Visual Studio 市场的微软或其附属公司的扩展用于 Visual Studio 产品系列之外的产品:Microsoft Visual Studio、Visual Studio Code、GitHub Codespaces、Azure DevOps、Azure DevOps Server,以及我们和微软附属公司(例如 GitHub, Inc.)提供的后续产品和服务。我们仅在 Visual Studio 产品系列中构建、测试、部署和支持这些扩展和服务,以确保它们符合我们的安全和质量标准。我们不会对其他地方的扩展这样做,包括在 Code - OSS 仓库 的分支上构建的扩展。有关更多信息,请参阅 Visual Studio 市场 服务条款 中的 条件:市场/NuGet 产品的使用的权利 。
我无法从产品 << 请填空 >> 中访问 Visual Studio 市场,为什么?
我们提供 Visual Studio 市场仅供 Visual Studio 产品系列使用:Microsoft Visual Studio、Visual Studio Code、GitHub Codespaces、Azure DevOps、Azure DevOps Server,以及我们和微软附属公司(如 GitHub, Inc.)提供的后续产品和服务。因此,替代产品(包括在 Code - OSS 仓库 分支上构建的产品)不允许访问 Visual Studio 市场。我们这样做是为了保护生态系统的安全和质量,包括以下措施
扩展在产品的上下文中并以产品的权限运行,并且它们可能包含可执行代码。 市场会对每个扩展进行安全审查 ,以防止它们执行恶意活动。当您通过 Visual Studio 产品系列安装扩展时,您会知道它已经过审查,可以在该上下文中运行。
扩展在产品的上下文中并以产品的权限运行,并且它们可能包含可执行代码。 市场会对每个扩展进行安全审查 ,以防止它们执行恶意活动。当您通过 Visual Studio 产品系列安装扩展时,您会知道它已经过审查,可以在该上下文中运行。
当恶意扩展被举报并核实,或者在扩展依赖项中发现漏洞时,该扩展将从市场中移除、加入黑名单,并由 VS Code 自动卸载。
当恶意扩展被举报并核实,或者在扩展依赖项中发现漏洞时,该扩展将从市场中移除、加入黑名单,并由 VS Code 自动卸载。
微软投入了大量资源来运行、维护和保护这项全球在线服务。Visual Studio 产品系列旨在以安全可靠的方式访问市场,以便在您需要时市场始终可用。
微软投入了大量资源来运行、维护和保护这项全球在线服务。Visual Studio 产品系列旨在以安全可靠的方式访问市场,以便在您需要时市场始终可用。
扩展可能会与产品深度集成。市场确保我们维护 API 兼容性,并且扩展正确使用产品的扩展 API。这有助于确保您安装的扩展在版本更新时能够正常工作。
扩展可能会与产品深度集成。市场确保我们维护 API 兼容性,并且扩展正确使用产品的扩展 API。这有助于确保您安装的扩展在版本更新时能够正常工作。
有关此主题的更多详细信息,请参阅 #31168 。
为什么我应该从 Visual Studio 市场安装扩展?
与从其他来源安装相比,从 Visual Studio 市场安装扩展具有许多优势。
Visual Studio 市场采用 多种机制 来保护您免受安装恶意扩展的影响,包括恶意软件扫描、动态检测、发布者验证等。当您从其他来源安装扩展时,无法保证该扩展在您的上下文中运行是安全的。
Visual Studio 市场采用 多种机制 来保护您免受安装恶意扩展的影响,包括恶意软件扫描、动态检测、发布者验证等。当您从其他来源安装扩展时,无法保证该扩展在您的上下文中运行是安全的。
当恶意扩展被举报并核实,或者在扩展依赖项中发现漏洞时,该扩展将从市场中移除、加入 黑名单 ,并由 VS Code 自动卸载。
当恶意扩展被举报并核实,或者在扩展依赖项中发现漏洞时,该扩展将从市场中移除、加入 黑名单 ,并由 VS Code 自动卸载。
市场使您能够轻松查找、安装和更新扩展。当有可用更新时(例如由于安全修复),VS Code 会自动安装更新版本。
市场使您能够轻松查找、安装和更新扩展。当有可用更新时(例如由于安全修复),VS Code 会自动安装更新版本。
扩展可能会与产品深度集成。市场确保我们维护 API 兼容性,并且扩展正确使用产品的扩展 API。这有助于确保您安装的扩展在版本更新时能够正常工作。
扩展可能会与产品深度集成。市场确保我们维护 API 兼容性,并且扩展正确使用产品的扩展 API。这有助于确保您安装的扩展在版本更新时能够正常工作。
报告 VS Code 扩展的问题
对于错误、功能请求或联系扩展开发者,您应该使用 Visual Studio Code 市场 中提供的链接,或者使用命令面板中的 Help: Report Issue 。但是,如果出现扩展不遵守我们的行为准则的问题(例如包含粗俗、色情内容或对用户构成风险),我们有一个 用于报告该问题的电子邮件别名 。收到邮件后,我们的市场团队将研究采取适当的措施,包括取消发布该扩展。
如何查找我当前的 VS Code 版本?
您可以在“关于”对话框中找到 VS Code 版本信息。
在 macOS 上,转到 Code > 关于 Visual Studio Code 。
在 Windows 和 Linux 上,转到 Help > 关于 。
VS Code 版本是列出的第一个 版本 (Version) 号,其版本格式为“主版本号.次版本号.修订号”,例如“1.100.0”。
您可以在某个版本的发行说明顶部找到某些发行版下载的链接
如果您需要那里未列出的安装类型,可以通过以下 URL 手动下载
将您想要的特定版本替换到 {version} 占位符中。例如,要下载 1.83.1 的 Linux Arm64 debian 版本,您可以使用
如果您想始终下载最新的 VS Code 稳定版本,可以使用版本字符串 latest 。
自 1.83 版本发布后,Windows x86 32 位版本不再受到积极支持,并且可能会带来安全风险。
想提前尝鲜 VS Code 的新功能吗?您可以通过安装“Insiders”构建版本来尝试 VS Code 的预发布版本。Insiders 构建版本与您的稳定版 VS Code 并排安装,并具有隔离的设置、配置和扩展。Insiders 构建版本每晚更新,因此您可以获得前一天的最新错误修复和功能更新。
要安装 Insiders 构建版本,请前往 Insiders 下载页面 。
如何退出 VS Code 的自动更新?
默认情况下,当我们发布新更新时,VS Code 会为 macOS 和 Windows 用户设置为自动更新。如果您不想接收自动更新,请将 Update: Mode 设置 ( update.mode 在 VS Code 中打开 在 VS Code Insiders 中打开 此设置可由您的组织管理。请联系您的管理员进行更改。 组织 ) 从 default 改为 none 。
要修改更新模式,请转到 文件 > 首选项 > 设置 ,搜索 update mode 并将设置更改为 none 。
如果您使用 JSON 编辑器进行设置,请添加以下行
您可以通过卸载当前版本的 VS Code,然后安装特定 发行说明 页面顶部提供的下载链接来安装以前的 VS Code 发行版。
在 Linux 上:如果正确安装了 VS Code 仓库,则您的系统包管理器应以与系统中其他包相同的方式处理自动更新。请参阅 在 Linux 上安装 VS Code 。
默认情况下,当有新版本可用时,VS Code 会自动更新扩展。如果您不希望扩展自动更新,可以在设置编辑器( ⌘, (Windows、Linux Ctrl+, ) )中将 Extensions: Auto Update 设置 ( extensions.autoUpdate 在 VS Code 中打开 在 VS Code Insiders 中打开 此设置可由您的组织管理。请联系您的管理员进行更改。 组织 ) 设置为 off 。
如果您使用 JSON 编辑器修改设置,请添加以下行
在哪里可以找到 Visual Studio Code 图标?
是否有关于使用图标和名称的指南?
您可以在 图标和名称使用指南 下载官方的 Visual Studio Code 图标并阅读使用指南。
什么是 VS Code “工作区 (workspace)”?
VS Code 的“工作区 (workspace)”通常就是您的项目根文件夹。VS Code 使用“工作区”概念来界定项目配置的范围,例如特定于项目的 设置 以及用于 调试 和 任务 的配置文件。工作区文件存储在项目根目录的 .vscode 文件夹中。您还可以通过名为 多根工作区 (Multi-root workspaces) 的功能在一个 VS Code 工作区中拥有多个根文件夹。
您可以在 什么是 VS Code“工作区”? 一文中了解更多信息。
VS Code 会进行后台检查,以检测安装在磁盘上的内容是否被更改,如果是,您将在标题栏中看到文本 [Unsupported] ([不支持])。这样做是因为某些 extensions 直接修改(修补)VS Code 产品,这种修改具有半永久性(直到下一次更新),这可能会导致难以重现的问题。我们并不是要阻止对 VS Code 进行修补,但我们希望提高人们的认识,即修补 VS Code 意味着您正在运行不受支持的版本。 重新安装 VS Code 将替换修改后的文件并消除此警告。
如果防病毒软件误将 VS Code 文件隔离或删除,您也可能会看到 [Unsupported] 消息(有关示例,请参见议题 #94858 )。请检查您的防病毒软件设置并重新安装 VS Code 以修复缺失的文件。
当从终端启动 VS Code 时(例如通过 code . ),它有权访问在您的 .bashrc 或 .zshrc 文件中定义的环境设置。这意味着诸如任务或调试目标之类功能也可以访问这些设置。
但是,当从平台的的用户界面启动时(例如 macOS 坞站中的 VS Code 图标),您通常不是在 shell 环境中运行,并且无法访问这些环境设置。这意味着根据您启动 VS Code 的方式,您可能无法获得相同的环境。
为了解决此问题,当通过 UI 手势启动时,VS Code 将启动一个小型进程来运行(或“解析”)在您的 .bashrc 、 .zshrc 或 PowerShell 配置文件中定义的 shell 环境。如果在可配置的超时时间(通过 application.shellEnvironmentResolutionTimeout 设置,默认为 10 秒)之后,shell 环境仍未解析或由于任何其他原因解析失败,VS Code 将中止“解析”进程,并在没有 shell 环境设置的情况下启动,并且您将看到类似于以下的错误:
如果错误消息指示解析 shell 环境花费的时间太长, 下面的步骤 可以帮助您调查可能导致变慢的原因。您还可以通过配置 application.shellEnvironmentResolutionTimeout 设置来增加超时时间。但请记住,增加此值意味着您需要等待更长时间才能使用 VS Code 中的某些功能(例如扩展)。
如果您看到其他错误,请创建 议题 以获取帮助。
下面概述的过程可能会帮助您确定 shell 初始化的哪些部分耗时最长:
打开您的 shell 启动文件(例如,在 VS Code 的快速打开( ⌘P (Windows、Linux Ctrl+P ) )中键入 ~/.bashrc 或 ~/.zshrc )。
有选择地注释掉可能运行时间长的操作(如果您找到了 nvm ,可以注释掉它)。
保存并完全重新启动 VS Code。
继续注释掉操作,直到错误消失。
注意 :虽然 nvm 是一个强大且有用的 Node.js 包管理器,但如果在 shell 初始化期间运行,它可能会导致 shell 启动缓慢。您可以考虑使用替代的包管理器(例如 asdf ),或者在互联网上搜索有关 nvm 性能优化的建议。
如果修改 shell 环境不可行,您可以通过直接从完全初始化的终端启动 VS Code 来跳过 VS Code 的解析 shell 环境阶段。
在打开的终端中键入 code 将启动带有您上一个工作区的 VS Code。
键入 code . 将启动并打开当前文件夹的 VS Code。
Visual Studio Code 使用的 Electron shell 在某些 GPU(图形处理器)硬件加速上存在兼容问题。如果 VS Code 显示空白(空的)主窗口,您可以尝试通过添加 Electron --disable-gpu 命令行开关在启动 VS Code 时禁用 GPU 加速。
如果这发生在更新之后,删除 GPUCache 目录可以解决此问题。
打开文件夹后 VS Code 立即无响应
当您打开一个文件夹时,VS Code 将搜索典型的项目文件以向您提供额外的工具(例如,状态栏中的解决方案选择器以打开解决方案)。如果您打开包含大量文件的文件夹,搜索可能会消耗大量时间和 CPU 资源,在此期间 VS Code 的响应可能会变慢。我们计划在未来改进这一点,但目前您可以通过 files.exclude 在 VS Code 中打开 在 VS Code Insiders 中打开 设置从资源管理器中排除某些文件夹,这样它们就不会被搜索项目文件
您可以在 Stack Overflow 上提问并搜索答案,也可以直接在我们的 GitHub 仓库 中提交议题和功能请求。
如果您想联系专业支持工程师,可以向 微软协助支持团队 提交工单。