vscode 启动变慢可先用 developer: show running extensions 查 activation time 超 300ms 的插件;再用 code --prof-startup 获取详细启动耗时堆栈;区分启动耗时与后台占用,结合 developer: open process explorer 和 activationevents 分析必要性。

怎么看哪个插件让 VSCode 启动变慢
VSCode 自带诊断能力,不用装额外工具。按 Ctrl+Shift+P(macOS 是 Cmd+Shift+P),输入并执行 Developer: Show Running Extensions,就能看到所有插件的激活耗时——重点看 Activation Time 那一列,超过 300ms 的基本可以怀疑。
更准的办法是启动时加参数:关掉所有窗口,终端里运行 code --prof-startup(Windows 用 code.cmd --prof-startup),等界面完全出来后立刻关掉,它会自动生成一个 cpu-profile- 开头的文件,用浏览器打开就能看到各插件在启动阶段的耗时堆栈。
- 注意区分「启动耗时」和「后台常驻占用」:有些插件激活快但后续疯狂轮询或监听文件,得靠
Developer: Open Process Explorer看内存/CPU 占用 -
Remote - SSH、GitLens、Prettier这类功能强的插件,常因初始化 Git 状态、扫描 node_modules 或解析配置而卡住主线程 - 禁用插件后务必重启 VSCode,仅重载窗口不生效
哪些插件最常拖慢启动(附卸载建议)
不是所有高分插件都该删,关键是看它是否在你当前工作流中真被用到。比如 ESLint 在纯 Markdown 项目里纯属挂机;Python 插件在没 .py 文件的文件夹里也会照常激活。
-
GitLens:默认开启所有功能,进设置搜gitlens.advanced.enabled,关掉codeLens和blame相关项,能省掉 200ms+ 激活时间 -
Prettier:如果只在保存时格式化,把prettier.requireConfig设为true,没.prettierrc就不加载 -
Remote - SSH:除非真连远程,否则直接卸载;若需偶尔使用,改用命令面板临时触发Remote-SSH: Connect to Host...更轻量 - 主题类插件一般不拖启动,但带图标包的(如
Material Icon Theme)如果启用了folders.colorize,会遍历整个工作区目录树
卸载前先验证影响范围
别一看到耗时高就全干掉。有些插件看似慢,其实是为你省了更多时间——比如 IntelliCode 启动多花 150ms,但补全准确率提升明显,长期看反而更快。
- 用
Developer: Toggle Developer Tools切到 Console 标签,启动时留意有没有Failed to activate extension类报错,说明有依赖关系,不能随便删 - 检查插件的
activationEvents:在插件市场页点「Contributions」→「package.json」,找"activationEvents"字段。值为*或"onStartupFinished"的插件,一开 IDE 就强制加载,优先处理 - 对团队项目,确认插件是否由
.vscode/extensions.json推荐——这类通常有协作必要性,删之前最好同步
卸载后怎么避免反复踩坑
插件生态变化快,今天轻量的插件明天可能加一堆监听器。定期清理比一次清空更重要。
- 每月花两分钟跑一次
Developer: Show Running Extensions,排序看顶部几个,形成习惯 - 新装插件前,先去 GitHub 仓库翻
package.json里的activationEvents和main入口文件,看它是不是一上来就 require 大量模块 - 把常用插件按角色分类:核心(
EditorConfig)、语言专属(Rust)、临时需求(REST Client),后者用完即删
真正难的不是找到慢插件,而是判断它“慢得值不值得忍”。有些延迟藏在文件保存后、光标移动时、甚至切换标签页的瞬间,得结合具体场景反复测——别信单次数据,多试几次再下结论。











