我的一个 Visual Studio 2022 扩展依赖于 nuget 包Microsoft.VisualStudio.SDK 17.0.32112.339和Microsoft.VSSDK.BuildTools 17.7.2196。显然,我几年前就添加了它们,并且出于必要只更新了一次 BuildTools 。这些包的当前版本分别为 17.12.40392 和 17.12.2069。Visual Studio 2022 本身的当前稳定版本是 17.12 版。
问:如果我将这些依赖项更新到最新版本,Microsoft 是否保证生成的扩展(.vsix 包)也适用于旧版本的 Visual Studio 2022,例如 VS 2022 17.7?我在文档中找不到与此相关的任何内容。
您收到的错误给出了正确的提示:通常不会,较新的软件包不支持较旧的版本。理由很充分:如果我们在次要版本中添加了新的 API,那么它将存在于新软件包中,但不会存在于较旧的版本中。
一个值得注意的例外是 VSSDK.BuildTools 包——那里的新版本仍然可以针对旧版本的 Visual Studio;有时您必须在构建中升级这个包以支持较新的构建环境。