试试 VS Code 中的

Visual Studio Code 常见问题解答

我们的文档在特定主题中包含了常见问题解答部分。我们在这里收集了其他主题中未涉及的问题。

如果您在此处找不到问题的答案,请查看我们之前在 GitHub 上报告的问题 以及我们的 发行说明

Visual Studio Code 和 Visual Studio IDE 有什么区别?

Visual Studio Code 是一款精简的代码编辑器,支持调试、任务运行和版本控制等开发操作。它旨在为开发者提供快速的代码-构建-调试周期所需的工具,并将更复杂的工作流程留给功能更全面的 IDE,例如 Visual Studio IDE

VS Code 是免费的吗?

是的,VS Code 可供个人或商业用途免费使用。详情请参阅 产品许可

如果您还没有 Copilot 订阅,可以通过注册 Copilot 免费计划 免费使用 Copilot,并获得每月一定数量的补全和对话交互。

平台支持

支持哪些操作系统?

VS Code 运行在 macOS、Linux 和 Windows 上。有关支持的版本,请参阅 要求文档。您可以在 设置概述 中找到更多特定于平台的详细信息。

我可以在旧版 Windows 上运行 VS Code 吗?

Microsoft 已终止对 Windows 7Windows 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.96 版(2024 年 11 月)开始的 VS Code 桌面版本将弃用对 macOS Catalina(10.15 版及更早版本)的支持。从 VS Code 1.98 版(2025 年 2 月)开始,我们将停止在 macOS Catalina(10.15 版及更早版本)上更新 VS Code。您需要升级到更新的 macOS 版本才能使用更高版本的 VS Code。

VS Code 将不再为 macOS Catalina(10.15 版及更早版本)提供产品更新或安全修补程序,VS Code 1.97 版将是 macOS Catalina(10.15 版及更早版本)可用的最后一个版本。您可以在 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 发行版,建议的替代方案是使用我们的 Web 客户端。如果您想使用桌面版本,可以从 此处 下载 VS Code 1.85 版。根据您的平台,请确保禁用更新以保留在该版本。一个好的建议是使用 便携模式 进行安装设置。

我可以运行便携版 VS Code 吗?

是的,VS Code 有一个 便携模式,可以让您将设置和数据保存在与安装文件相同的位置,例如在 USB 驱动器上。

遥测和崩溃报告

如何禁用遥测报告

VS Code 收集使用数据并将其发送到 Microsoft,以帮助改进我们的产品和服务。阅读我们的 隐私声明遥测文档 以了解更多信息。

如果您不想向 Microsoft 发送使用数据,可以将 `telemetry.telemetryLevel` 用户 设置 设置为 `off`。

文件 > 首选项 > 设置中,搜索 `telemetry`,并将遥测: 遥测级别设置设为 `off`。这将禁用 VS Code 今后的所有遥测事件。

重要提示:VS Code 允许您安装 Microsoft 和第三方扩展。这些扩展可能收集自己的使用数据,并且不受 `telemetry.telemetryLevel` 设置的控制。请查阅特定扩展的文档,了解其遥测报告情况。

如何禁用实验

VS Code 使用实验来尝试新功能或逐步推广这些功能。我们的实验框架会调用 Microsoft 拥有的服务,因此在禁用遥测时会禁用它。但是,如果您想禁用实验,无论您的遥测偏好如何,您可以将 `workbench.enableExperiments` 用户 设置 设置为 `false`。

文件 > 首选项 > 设置中,搜索 `experiments`,并取消选中工作台: 启用实验设置。这将阻止 VS Code 调用该服务并选择退出任何正在进行的实验。

如何禁用崩溃报告

VS Code 收集有关发生的任何崩溃的数据,并将其发送到 Microsoft,以帮助改进我们的产品和服务。阅读我们的 隐私声明遥测文档 以了解更多信息。

如果您不想向 Microsoft 发送崩溃数据,可以将 `telemetry.telemetryLevel` 用户 设置 更改为 `off`。

文件 > 首选项 > 设置中,搜索 `telemetry`,并将遥测: 遥测级别设置设为 `off`。这将禁用 VS Code 的所有遥测事件,包括崩溃报告。您需要重启 VS Code 以使设置更改生效。

GDPR 和 VS Code

通用数据保护条例 (GDPR) 现已生效,我们想借此机会重申,我们非常重视隐私。这不仅适用于 Microsoft 公司,也特别适用于 VS Code 团队。

为了支持 GDPR

  • 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` 存储库的一个分发版本,包含 Microsoft 特定的定制(包括源代码),并在传统的 Microsoft 产品许可 下发布。

有关更多详细信息,请参阅 Visual Studio Code 和 'Code - OSS' 区别 一文。

“基于开源构建”是什么意思?

Microsoft Visual Studio CodeMicrosoft 许可的 'Code - OSS' 分发版本,其中包含 Microsoft 专有资产(如图标)和功能(Visual Studio Marketplace 集成、启用远程开发的细微方面)。虽然这些附加内容在整个分发代码库中所占比例很小,但由于这些差异,更准确的说法是 Visual Studio Code 是“基于开源构建”,而不是“就是”开源。有关每个分发版本包含内容的更多信息,请参阅 Visual Studio Code 和 'Code - OSS' 区别 一文。

如何查找扩展的许可证?

大多数扩展在它们的 Marketplace 页面或在扩展视图中选择扩展时,会在概述部分链接到其许可证。

例如

Extensions view details license link

如果您找不到许可证的链接,如果扩展是公开的,您可以在其存储库中找到许可证,或者您可以通过 Marketplace 的问答部分联系扩展作者。

扩展

所有 VS Code 扩展都是开源的吗?

扩展作者可以自由选择适合其业务需求的许可证。虽然许多扩展作者选择在开源许可证下发布其源代码,但有些扩展(例如 Wallaby.jsGoogle Cloud CodeVS Code 远程开发扩展)使用专有许可证。

在 Microsoft,我们尽可能开源我们的扩展。但是,对现有专有源代码或库的依赖、跨越 Microsoft 许可工具或服务(例如 Visual Studio)的源代码以及 Microsoft 内部业务模式的差异将导致某些扩展使用专有许可证。您可以在 Microsoft 扩展许可证 文章中找到 Microsoft 贡献的 Visual Studio Code 扩展及其许可证列表。

我无法使用产品 X 访问扩展市场?

我们授权 Visual Studio 系列产品使用 Visual Studio Marketplace:Microsoft Visual Studio、Visual Studio Code、GitHub Codespaces、Azure DevOps、Azure DevOps Server,以及我们和 Microsoft 关联公司(如 GitHub, Inc. (“GitHub”))提供的后续产品和服务。

这很重要,原因如下

  • 扩展在产品的上下文和权限下运行,并且可能包含可执行代码。Marketplace 会审查每个扩展 的安全性,以防止它们执行恶意活动。当您在使用 Visual Studio 系列产品时安装扩展,我们可以确保该扩展在该上下文中运行安全。

  • 当报告并验证了恶意扩展,或者在扩展依赖项中发现漏洞时,该扩展会从 Marketplace 中删除,添加到 阻止列表,并由 VS Code 自动卸载。

  • Microsoft 花费大量资源运行、维护和保护此全球在线服务。Visual Studio 系列中的产品保证以安全可靠的方式访问 Marketplace,确保您在需要时可以使用 Marketplace。

  • 扩展可能与产品深度集成。Marketplace 确保我们维护 API 兼容性,并且扩展正确使用产品扩展 API。这有助于确保您安装的扩展在产品版本更新后仍能正常工作。

为什么我应该从 Visual Studio Marketplace 安装扩展?

从 Visual Studio Marketplace 安装扩展比从其他来源安装有许多优势。

  • Visual Studio Marketplace 采用 多种机制 来保护您免受安装恶意扩展的侵害,包括恶意软件扫描、动态检测、发布者验证等。当您从其他来源安装扩展时,无法保证该扩展在您的上下文中运行安全。

  • 当报告并验证了恶意扩展,或者在扩展依赖项中发现漏洞时,该扩展会从 Marketplace 中删除,添加到 阻止列表,并由 VS Code 自动卸载。

  • Marketplace 使您能够轻松查找、安装和更新扩展。当有更新可用时(例如,由于安全修复),VS Code 会自动安装更新版本。

  • 扩展可能与产品深度集成。Marketplace 确保我们维护 API 兼容性,并且扩展正确使用产品扩展 API。这有助于确保您安装的扩展在产品版本更新后仍能正常工作。

我无法使用产品 X 使用 Microsoft 扩展?

我们在官方开源 Microsoft 分发版 VS Code 中测试 Microsoft 扩展。我们无法保证它们在其他方分发版中能正常工作。请务必查看扩展的许可证,了解有关可在哪些产品中使用的具体条款和条件。

报告 VS Code 扩展的问题

对于 Bug、功能请求或联系扩展作者,您应该使用 Visual Studio Code Marketplace 中提供的链接,或使用命令面板中的帮助: 报告问题。但是,如果出现扩展不遵守我们的行为准则的问题,例如包含亵渎、色情内容或对用户构成风险,那么我们有一个 电子邮件别名来报告问题。收到邮件后,我们的 Marketplace 团队将调查并采取适当的行动,包括但不限于取消发布该扩展。

VS Code 版本

如何查找我当前的 VS Code 版本?

您可以在“关于”对话框中找到 VS Code 版本信息。

在 macOS 上,转到Code > 关于 Visual Studio Code

在 Windows 和 Linux 上,转到帮助 > 关于

VS Code 版本是列出的第一个版本号,其格式为“主版本号.次版本号.发布版本号”,例如“1.27.0”。

以前的发布版本

您可以在某个版本的 发行说明 顶部找到一些发布下载链接。

Download links in release notes

如果您需要的安装类型未在此处列出,您可以通过以下 URL 手动下载

下载类型 URL
Windows x64 系统安装程序 https://update.code.visualstudio.com/{version}/win32-x64/stable
Windows x64 用户安装程序 https://update.code.visualstudio.com/{version}/win32-x64-user/stable
Windows x64 zip https://update.code.visualstudio.com/{version}/win32-x64-archive/stable
Windows x64 CLI https://update.code.visualstudio.com/{version}/cli-win32-x64/stable
Windows Arm64 系统安装程序 https://update.code.visualstudio.com/{version}/win32-arm64/stable
Windows Arm64 用户安装程序 https://update.code.visualstudio.com/{version}/win32-arm64-user/stable
Windows Arm64 zip https://update.code.visualstudio.com/{version}/win32-arm64-archive/stable
Windows Arm64 CLI https://update.code.visualstudio.com/{version}/cli-win32-arm64/stable
macOS Universal https://update.code.visualstudio.com/{version}/darwin-universal/stable
macOS Intel 芯片 https://update.code.visualstudio.com/{version}/darwin/stable
macOS Intel 芯片 CLI https://update.code.visualstudio.com/{version}/cli-darwin-x64/stable
macOS Apple silicon https://update.code.visualstudio.com/{version}/darwin-arm64/stable
macOS Apple silicon CLI https://update.code.visualstudio.com/{version}/cli-darwin-arm64/stable
Linux x64 https://update.code.visualstudio.com/{version}/linux-x64/stable
Linux x64 debian https://update.code.visualstudio.com/{version}/linux-deb-x64/stable
Linux x64 rpm https://update.code.visualstudio.com/{version}/linux-rpm-x64/stable
Linux x64 snap https://update.code.visualstudio.com/{version}/linux-snap-x64/stable
Linux x64 CLI https://update.code.visualstudio.com/{version}/cli-linux-x64/stable
Linux Arm32 https://update.code.visualstudio.com/{version}/linux-armhf/stable
Linux Arm32 debian https://update.code.visualstudio.com/{version}/linux-deb-armhf/stable
Linux Arm32 rpm https://update.code.visualstudio.com/{version}/linux-rpm-armhf/stable
Linux Arm32 CLI https://update.code.visualstudio.com/{version}/cli-linux-armhf/stable
Linux Arm64 https://update.code.visualstudio.com/{version}/linux-arm64/stable
Linux Arm64 debian https://update.code.visualstudio.com/{version}/linux-deb-arm64/stable
Linux Arm64 rpm https://update.code.visualstudio.com/{version}/linux-rpm-arm64/stable
Linux Arm64 CLI https://update.code.visualstudio.com/{version}/cli-linux-arm64/stable

将您想要的特定版本替换 `{version}` 占位符。例如,要下载 1.83.1 的 Linux Arm64 debian 版本,您将使用

https://update.code.visualstudio.com/1.83.1/linux-deb-arm64/stable

如果您想始终下载最新的 VS Code 稳定版本,可以使用版本字符串 `latest`。

Windows 32 位版本

Windows x86 32 位版本在 1.83 版发布后不再得到积极支持,并可能存在安全风险。

下载类型 URL
Windows x86 系统安装程序 https://update.code.visualstudio.com/{version}/win32/stable
Windows x86 用户安装程序 https://update.code.visualstudio.com/{version}/win32-user/stable
Windows x86 zip https://update.code.visualstudio.com/{version}/win32-archive/stable
Windows x86 CLI https://update.code.visualstudio.com/{version}/cli-win32-ia32/stable

预发布版本

想提前体验 VS Code 的新功能吗?您可以通过安装“Insider”版本来尝试 VS Code 的预发布版本。“Insider”版本与您的稳定版 VS Code 安装并排安装,并拥有独立的设置、配置和扩展。“Insider”版本每晚更新,因此您将获得前一天的最新 bug 修复和功能更新。

要安装 Insider 版本,请访问 Insider 下载页面

如何选择退出 VS Code 自动更新?

默认情况下,VS Code 设置为在发布新更新时为 macOS 和 Windows 用户自动更新。如果您不想接收自动更新,可以将更新: 模式设置从 default 更改为 none

要修改更新模式,请转到 文件 > 首选项 > 设置,搜索 `update mode` 并将设置更改为 none

如果您使用 JSON 编辑器修改设置,请添加以下行

    "update.mode": "none"

您可以通过卸载当前版本,然后安装特定 发行说明 页面顶部提供的下载包来安装以前的 VS Code 版本。

注意:在 Linux 上:如果 VS Code 存储库安装正确,则系统包管理器应以与其他系统包相同的方式处理自动更新。请参阅 在 Linux 上安装 VS Code

选择退出扩展更新

默认情况下,VS Code 也会在新版本可用时自动更新扩展。如果您不想扩展自动更新,可以在设置编辑器 (⌘, (Windows, Linux Ctrl+,)) 中取消选中扩展: 自动更新复选框。

如果您使用 JSON 编辑器修改设置,请添加以下行

    "extensions.autoUpdate": false

在哪里可以找到 Visual Studio Code 图标?

关于图标和名称的使用有什么指导原则吗?

您可以在 图标和名称使用指导原则 下载官方 Visual Studio Code 图标并阅读使用指导原则。

什么是 VS Code“工作区”?

VS Code “工作区”通常就是您的项目根文件夹。VS Code 使用“工作区”概念来确定项目配置的范围,例如项目特定的 设置 以及 调试任务 的配置文件。工作区文件存储在项目根目录的 .vscode 文件夹中。您还可以通过称为 多根工作区 的功能在一个 VS Code 工作区中拥有多个根文件夹。

您可以在 什么是 VS Code“工作区”? 一文中了解更多信息。

问题与故障排除

安装似乎已损坏 [不支持]

VS Code 会在后台检查安装是否已在磁盘上被更改,如果是,您会在标题栏看到文本 [不支持]。这样做是因为某些扩展会直接修改(修补)VS Code 产品,这种修改是半永久性的(直到下次更新),并且可能导致难以重现的问题。我们并非试图阻止 VS Code 修补,但我们希望提高认识,修补 VS Code 意味着您正在运行不受支持的版本。重新安装 VS Code 将替换修改的文件并消除警告。

如果 VS Code 文件被防病毒软件误隔离或删除,您也可能会看到 [不支持] 消息(请参阅问题 #94858 获取示例)。检查您的防病毒软件设置并重新安装 VS Code 以修复丢失的文件。

解析 shell 环境失败

本节仅适用于 macOS 和 Linux 环境。

当从终端启动 VS Code 时(例如,通过 code . 命令),它会访问您 .bashrc.zshrc 文件中定义的环境设置。这意味着任务或调试目标等功能也具有这些设置的访问权限。

但是,当从平台的用户界面(例如,macOS Dock 中的 VS Code 图标)启动时,您通常不在 shell 的上下文中运行,并且无法访问这些环境设置。这意味着根据您启动 VS Code 的方式,您可能拥有不同的环境。

为了解决这个问题,当通过 UI 操作启动时,VS Code 将启动一个小进程来运行(或“解析”)您 .bashrc.zshrc 文件中定义的 shell 环境。如果在可配置的超时时间(通过 application.shellEnvironmentResolutionTimeout,默认为 10 秒)后,shell 环境仍未解析或因任何其他原因解析失败,VS Code 将中止“解析”过程,不带您的 shell 环境设置启动,并且您将看到如下错误:

Shell environment startup error

如果错误消息指示解析 shell 环境花费了太长时间,下面的 步骤 可以帮助您调查导致速度缓慢的原因。您还可以通过配置 `application.shellEnvironmentResolutionTimeout` 设置来增加超时时间。但请记住,增加此值意味着您需要等待更长时间才能使用 VS Code 中的某些功能,例如扩展。

如果您看到其他错误,请创建一个 问题 以获得帮助。

调查 shell 初始化缓慢问题

以下过程可能有助于您找出 shell 初始化中最耗时的部分

  • 打开 shell 的启动文件(例如,在 VS Code 中通过在快速打开 (⌘P (Windows, Linux Ctrl+P)) 中键入 ~/.bashrc~/.zshrc 来打开)。
  • 选择性地注释掉可能运行时间较长的操作(例如,如果您发现 nvm)。
  • 保存并完全重启 VS Code。
  • 继续注释掉操作,直到错误消失。

注意:虽然 nvm 是一个功能强大且实用的 Node.js 包管理器,但在 shell 初始化期间运行时,它可能会导致 shell 启动时间变慢。你可能考虑使用其他包管理器替代品,例如 asdf,或者在互联网上搜索 nvm 性能优化建议。

从终端启动 VS Code

如果修改你的 shell 环境不切实际,你可以通过直接从完全初始化的终端启动 VS Code 来避免 VS Code 解析 shell 环境的阶段。

  • 在已打开的终端中输入 code 将使用你上次的工作区启动 VS Code。
  • 输入 code . 将启动 VS Code 并打开当前文件夹。

VS Code 显示为空白?

Visual Studio Code 使用的 Electron shell 在处理某些 GPU(图形处理单元)硬件加速时可能会遇到问题。如果 VS Code 显示一个空白(空)主窗口,你可以尝试在启动 VS Code 时禁用 GPU 加速,方法是添加 Electron 命令行开关 --disable-gpu

code --disable-gpu

如果在更新后出现此问题,删除 GPUCache 目录可以解决问题。

rm -r ~/.config/Code/GPUCache

打开文件夹后 VS Code 立刻变得无响应

当你打开一个文件夹时,VS Code 会搜索典型的项目文件,以便为你提供额外的工具(例如,状态栏中的解决方案选择器,用于打开解决方案)。如果你打开一个包含大量文件的文件夹,搜索可能需要大量的时间和 CPU 资源,在此期间 VS Code 响应可能会变慢。我们计划将来改进这一点,但目前你可以通过 files.exclude 设置从资源管理器中排除文件夹,这样就不会搜索这些文件夹中的项目文件。

    "files.exclude": {
        "**/largeFolder": true
    }

技术支持渠道

你可以在 Stack Overflow 上提问和搜索答案,并在我们的 GitHub 仓库 中直接提交问题和功能请求。

如果你想联系专业的支持工程师,可以向 Microsoft 协助支持团队 提交工单。