编译VS Code源码时出现MSB8040错误的解决方法
解决VS Code源码编译时的MSB8040 Spectre库错误
问题原因
错误提示中使用的是VS2022的MSBuild工具集(v170),但你仅安装了VS2019(v142)版本的Spectre缓解库,工具集版本不匹配导致编译无法找到所需库文件。
解决方案
方案1:安装VS2022对应版本的Spectre组件
- 打开Visual Studio Installer,选择VS2022 Community进行「修改」操作
- 切换到「单个组件」标签,搜索并勾选以下组件:
- MSVC v143 - VS 2022 C++ x64/x86 Spectre-mitigated libs (Latest)
- C++ ATL for v143 build tools with Spectre Mitigations (x86 & x64)
- C++ MFC for v143 build tools with Spectre Mitigations (x86 & x64)
- 完成组件安装后,关闭所有终端窗口,重新打开终端进入VS Code源码目录,运行
yarn
方案2:强制使用v142工具集编译(可选)
如果不想安装VS2022的组件,可以手动修改项目配置指定使用已安装的v142工具集:
- 找到路径
C:\Users\parsonjc\vscode\node_modules\@vscode\policy-watcher\build\vscode-policy-watcher.vcxproj - 用文本编辑器打开该文件,找到
<PlatformToolset>节点,将其值从v170修改为v142 - 保存文件后,重新运行
yarn
注意事项
- 确保安装组件时选中了x64架构(匹配你的Windows 10 x64系统)
- 安装完成后必须重启终端,确保环境变量更新生效
内容的提问来源于stack exchange,提问作者joseph-parsons
相关产品推荐
相关产品推荐

