禁用部分按需加载的内置扩展确实能减少启动耗时,但建议先通过诊断工具确认具体瓶颈,避免误删影响开发体验。
先说结论:优先排查调试和语言服务类内置扩展,配合启动性能分析工具定位高耗时项。
- 先定位:使用内置命令查看启动阶段各扩展的耗时分布
- 先做:针对非必需场景禁用如 js-debug 等高频激活内置扩展
- 再验证:对比禁用前后的启动性能报告数据
诊断启动耗时
在命令面板(Ctrl+Shift+P)中直接运行以下诊断命令,无需安装额外工具:
Developer: Startup Performance:查看启动各阶段耗时,重点关注 Extension Activation 列表中的内置扩展耗时。
终端启动纯净模式排查:code `--disable-extensions`,用于对比原生启动速度基线。
报告解读:打开性能报告后,查找"Extension Activation"部分,按耗时排序。若某内置扩展耗时超过 100ms 且当前业务未使用其功能,可纳入禁用候选。
建议排查的内置扩展
1. 打开扩展面板,搜索 @builtin 列出所有内置扩展。
2. 重点排查以下高频耗时内置扩展(注意:扩展 ID 可能因 VSCode 版本不同存在差异,请以实际搜索为准):
ms-vscode.js-debug:即使不调试 JS 也会初始化完整调试服务,纯后端或非 JS 项目可禁用。vscode.typescript-language-features:无 tsconfig 也可能加载 TS 语言服务器,影响 JS/TS 智能感知。ms-vscode.references-view:随编辑器启动即初始化,若不使用引用视图可禁用。ms-vscode.test-explorer:检测到 package.json 即自动激活,无测试需求可禁用。
3. 右键点击对应扩展,选择 Disable (Global) 或 Disable (Workspace)。
配置文件优化
优化文件监听配置,在 settings.json 中添加排除项,减少文件 watcher 负载:
"files.watcherExclude": { "**/node_modules/**": true, "**/dist/**": true, "**/.git/**": true }验证与恢复
验证生效:再次运行 Developer: Startup Performance,对比报告中"Extension Activation"列表的总耗时变化。
恢复默认:若禁用后影响功能,可在扩展面板搜索 @disabled 找到被禁用的内置扩展,点击 Enable 按钮恢复。若无法找到,可通过命令 Developer: Reload Window 重置部分状态,或重置 settings.json 中相关配置。
风险提示
1. 禁用 vscode.typescript-language-features 会导致 JS/TS 文件丢失跳转、补全和语义高亮,前端开发者慎动。
2. 部分插件禁用后需重新打开文件或切换标签页才真正释放资源,建议重启 VSCode 验证。
3. 不要直接卸载内置扩展,使用禁用功能更安全,保留配置且可随时恢复。
4. 不同 VSCode 版本内置扩展 ID 可能存在差异,操作前请确认当前版本扩展列表。