如何从0开始将vscode源码编译、运行、打包桌面APP

**

网上关于此的内容很少,今天第二次的完整运行了,按照下文的顺序走不会出什么问题。最重要的就是环境的安装,否则极其容易报错,请参考我的依赖版本以及文末附上的vscode官方指南

**

第一步:克隆 VSCode 源码

首先,你需要从 GitHub 克隆 VSCode 的源代码。注意 :如果你直接下载 .zip 文件,编译可能会报错,推荐使用 Git 克隆。

bash 复制代码
git clone https://github.com/Microsoft/vscode.git
cd vscode

第二步:安装依赖

要成功构建 VSCode,首先需要安装一些必要的依赖项。

  1. Node.js :我使用的是 Node.js 版本 20.18.2。建议使用nvm管理node版本,理论上要求>=20。

  2. Python :我使用的是 Python 3.13.2 版本,Python 是一些依赖编译的要求工具。可以从 Python 官网 下载并安装。

  3. Visual Studio 2022 :为了支持 C++ 编译,你需要安装 Visual Studio 2022 并确保启用了 C++ 相关的构建工具。可以从 Visual Studio 官网 获取。安装的最小工作量为Desktop Development with C++。但"单个组件"中还有其他组件:

    MSVC v143 - VS 2022 C++ x64/x86 Spectre-mitigated libs (Latest)(用于ARM64ARM 上的 Windows,但可能仍然需要 x64/x86)

    C++ ATL for latest build tools with Spectre Mitigations

    C++ MFC for latest build tools with Spectre Mitigations

    打开命令提示符并运行npm config edit并添加或修改msvs_version与您的 vs 版本相同的设置。(例如msvs_version=2022对于 visual studio 2022)
    注意项目的路径全英文即可别带空格符号之类的像()就不行会报错,报错内容就不贴了大家注意就行

第三步:安装项目依赖

安装好所有的工具后,你可以开始安装 VSCode 项目的依赖:

bash 复制代码
npm install
npm install -g node-gyp

node-gyp 是一个构建工具,用于编译 Node.js 原生模块,它是 VSCode 项目的一部分,因此需要全局安装。

第四步:运行 VSCode

在你的vscode中打开源码文件夹运行以下命令

安装完依赖后,运行以下命令启动编译:

bash 复制代码
npm run watch

注意了,正常的情况应该是没有错误的,如果你之前删除lock.json或者使用--force之类的下载命令是可以正常调试,但是如果你要打包成桌面App的时候就欲哭无泪了,会各种失败,建议就是不要做这些高危操作!

然后根据你的操作系统,执行以下脚本:

  • Windows :执行 ./scripts/code.bat
  • MacOS 和 Linux :执行 ./scripts/code.sh

小技巧:快速刷新开发版本

当你成功启动开发版本的 VSCode 后,可以使用快捷键 Ctrl + R 来刷新页面,避免每次修改后都需要重新启动 VSCode。这可以极大提高开发效率。
注意了,相当于热更新的作用,注意是在开发的vscode中使用此快捷键。默认的快捷键就是这个Ctrl + R

第五步:运行 VSCode(可选)

这里有一个大坑,这个打包的过程根据电脑的性能,最低也得半小时起步,而我之前运行的是最小化版本: npm run gulp vscode-win32-x64-min

解释:

  • npm run gulp vscode-win32-x64 是用来构建 完整的 Windows 64 位桌面版本,它会生成一个可以运行的可执行文件(.exe 文件)以及其他相关文件,最终你可以使用它来启动修改后的 VSCode 桌面应用。

  • npm run gulp vscode-win32-x64-min 是构建 最小化版本 的命令,它不会生成你期望的完整桌面应用,而是生成一个更小、更精简的版本,主要用于发布或者是为了测试轻量级功能。

如果你想打包成桌面APP,以上按照文章的步骤执行的话,这一步没有问题

VS Code 可以为以下平台打包:win32-ia32 | win32-x64 | darwin-x64 | darwin-arm64 | linux-ia32 | linux-x64 | linux-arm

gulp有以下任务可用:

vscode-platform:为 构建一个打包版本platform

vscode-platform-min:为 构建打包和缩小的版本platform

👉提示!运行gulpvianpm以避免潜在的内存不足问题,例如npm run gulp vscode-linux-x64
比如我想打包成Windows系统的APP,执行:npm run gulp vscode-win32-x64

版本信息

以下是版本名称的小结:

  • Node.js 版本:20.18.2
  • Python 版本:3.13.2
  • node-gyp 版本:v11.1.0

参考文档

官方文档中提供了更详细的贡献指南,可以参考 如何贡献 VSCode 了解更多。


通过上述步骤,你应该能够成功地从源码编译并运行 VSCode。遵循这些步骤并确保环境配置正确,将帮助你顺利启动开发工作!

相关推荐
树码小子7 小时前
Pycharm解释器配置问题解决
ide·python·pycharm
FlyWIHTSKY9 小时前
idea中集成claude功能
java·ide·人工智能·intellij-idea·cloudera
BIBI20499 小时前
Windows 下 Maven 安装与 VSCode 配置
java·windows·vscode·maven·环境搭建·安装教程
weixin_4046793110 小时前
godot + vscode ai开发
ide·vscode·编辑器·游戏引擎·godot
我一定会有钱10 小时前
vscode system下载安装
ide·vscode·编辑器
2401_858286111 天前
VSCODE远程链接错误: 无法建立链接,过程试图写入的管道不存在的解决方法
ide·vscode·编辑器
像风一样自由20201 天前
加强版VScode结合remote-ssh远程连接服务器开发指南
服务器·vscode·ssh
一朵好运莲1 天前
Turbo Console Log插件VSCode更改log快捷键教程
ide·vscode·编辑器
IS6831 天前
视频文案提取技术全景:ASR vs OCR,哪种方案更适合你?
ide·macos·xcode
风筱1 天前
Idea的CC GUI插件安装Claude Code SDK失败
java·ide·ai编程