如何确定扩展可以使用哪些版本的 VS Code?

Gno*_*ell 5 python visual-studio-code

我尝试在 VS Code (1.40.2) 安装上安装 MS Python 扩展 (ms-python.python-2020.7.96456.vsix),但收到以下错误。“无法安装扩展‘ms-python-python’,因为它与 VS Code ‘1.40.2’不兼容”。我如何找出兼容的版本?我所处的环境无法连接互联网,因此必须在离线模式下使用 vsix。

Gno*_*ell 1

谢谢里奥V8!查看 package.json 后,我发现“engines”字段详细说明了所需的 VS Code 最低版本。

根据 code.visualstudio.com ( https://code.visualstudio.com/api/working-with-extensions/publishing-extension )

Visual Studio 代码兼容性

创作扩展时,您需要描述扩展与 Visual Studio Code 本身的兼容性。这可以通过 package.json 中的engines.vscode 字段来完成:

{ “引擎”:{ “vscode”:“^1.8.0” } }

值 1.8.0 表示您的扩展仅与 VS Code 1.8.0 兼容。值 ^1.8.0 表示您的扩展与 VS Code 1.8.0 及更高版本兼容,包括 1.8.1、1.9.0 等。

您可以使用engines.vscode字段来确保仅为包含您依赖的API的客户端安装扩展。这一机制与稳定版本和 Insider 版本配合得很好。

例如,假设 VS Code 的最新稳定版本是 1.8.0,在 1.9.0 的开发过程中引入了新的 API,因此通过版本 1.9.0-insider 在 Insider 版本中可用。如果您想要发布受益于此 API 的扩展版本,则应指定版本依赖性 ^1.9.0。您的新扩展版本将仅安装在大于或等于 1.9.0 的 VS Code 上,这意味着所有当前的 Insider 客户都将获得它,而稳定版客户只有在稳定版达到 1.9.0 时才会获得更新。