如何恢复 VS Code 调试工具栏(Debug Toolbar)的正常显示

千强姑娘_6576

千强姑娘_6576

2026-10-10

921人浏览

原创

如何恢复 VS Code 调试工具栏(Debug Toolbar)的正常显示

当 vs code 中 azure 函数调试启动后缺少调试工具栏、无法命中断点,通常由调试会话冲突、配置缺失或权限/环境兼容性问题导致;本文提供可验证的修复路径与配置优化方案。

当 vs code 中 azure 函数调试启动后缺少调试工具栏、无法命中断点,通常由调试会话冲突、配置缺失或权限/环境兼容性问题导致;本文提供可验证的修复路径与配置优化方案。

在使用 VS Code 调试 Python 编写的 Azure Functions 时,出现“Server [pid=XXXX] is already being debugged”警告、调试工具栏(即顶部悬浮的 Continue / Step Over / Stop 等按钮)完全不显示、断点失效等问题,并非罕见现象——尤其在 Windows 平台搭配 func host start 预启动任务时更为典型。该问题本质是调试器连接逻辑与进程生命周期管理未对齐所致,而非代码或函数本身错误。

? 核心原因分析

  • 调试会话残留:上一次调试未正常终止(如强制关闭终端、崩溃退出),导致 debugpy 监听端口(如 9091)仍被占用,新调试器尝试 attach 时虽能连接,但因 PID 冲突无法获取完整调试上下文,进而禁用 UI 工具栏;
  • launch.json 配置缺失关键字段:"subProcess": true 未启用,导致 VS Code 无法正确挂载子进程(Azure Functions Host 启动的 worker 进程)中的 Python 实例,调试控制权丢失;
  • 权限与环境隔离限制:Windows 下非管理员运行可能限制端口复用或进程注入;若混用 WSL/Windows 原生环境,debugpy 版本或网络栈兼容性亦可能引发静默失败。

✅ 推荐修复步骤(按优先级执行)

1. 清理残留调试进程(必做)

打开 Windows 任务管理器 → “详细信息”选项卡 → 按 Image Name 排序,查找并结束以下进程:

  • func.exe(Azure Functions Core Tools 主进程)
  • python.exe 或 py.exe(特别是命令行含 debugpy、--port 9091 或 __main__.py 的实例)
  • dotnet.exe(若使用 .NET Worker)

? 提示:也可在 PowerShell 中一键清理:

Get-Process -Name "func","python","dotnet" -ErrorAction SilentlyContinue | Stop-Process -Force

2. 更新 launch.json 配置(关键修正)

在您当前的配置中,必须添加 "subProcess": true,以确保调试器能穿透 Azure Functions Host 创建的子 Python 进程:

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Attach to Python Functions",
      "type": "debugpy",
      "request": "attach",
      "connect": {
        "host": "localhost",
        "port": 9091
      },
      "preLaunchTask": "func: host start",
      "justMyCode": false,
      "subProcess": true   // ← 新增此行,至关重要!
    }
  ]
}

✅ 补充建议:

VS Code Node
VS Code Node

通过作为 OpenClaw 节点连接的 VS Code/Cursor IDE 操作代码,提供 40 多种命令,涵盖文件操作、语言智能、Git、测试等功能。

下载
  • 确保 azure-functions-core-tools 为 v4+(推荐 v4.45.0+),且 debugpy 版本 ≥ 1.6.0(通过 pip show debugpy 验证);
  • 若使用 func host start --language-worker -- "--port 9091" 手动指定端口,请确认端口与 launch.json 严格一致。

3. 启动方式与权限优化

  • 以管理员身份运行 VS Code:右键 VS Code 快捷方式 → “以管理员身份运行”,避免 Windows 防火墙或 UAC 干预调试端口绑定;
  • 禁用其他调试扩展干扰:临时禁用 Copilot、CodeLLDB、Python Test Explorer 等可能劫持调试通道的插件;
  • 重置调试状态:按下 Ctrl+Shift+P → 输入 Developer: Reload Window 强制刷新调试服务。

4. 验证调试工具栏是否激活

成功修复后,应满足以下全部条件:

  • 终端输出中不再出现 is already being debugged 警告;
  • 左下角状态栏显示 “Debugging” 状态图标;
  • 顶部自动浮现调试工具栏(含 ▶️ Continue、⏹ Stop、⏭ Step Over、⤵ Step Into 等按钮);
  • 在 .py 文件中设置断点后,代码执行至该行时自动暂停,变量窗格可查看作用域数据。

⚠️ 注意:若仍无工具栏,请检查 VS Code 设置中是否误启用了 "debug.toolBarLocation": "hidden"(可在设置搜索 debug toolbar location 修改为 default 或 docked)。

? 总结

VS Code 调试工具栏消失不是 UI 渲染故障,而是调试会话未获得完整控制权的明确信号。"subProcess": true 是 Azure Functions + Python 调试场景的必需配置,配合进程清理与权限保障,即可稳定恢复断点调试与可视化控制能力。Linux 用户较少遇到此问题,正是因为其进程模型与端口管理更宽松;而 Windows 开发者需主动适配这一差异。建议将修复后的 launch.json 和清理脚本纳入团队开发规范,避免重复踩坑。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

vs code

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
vscode是什么_vscode怎么安装配置
vscode是什么_vscode怎么安装配置

VS Code(Visual Studio Code)是一款免费、开源的跨平台代码编辑器,由微软开发和维护。它被广泛用于软件开发和编程,支持多种编程语言和框架。VS Code 同时提供了丰富的功能和扩展性,使开发者可以高效地编写、编辑和调试代码。

2023.06.30

1295

18

vscode怎么运行代码
vscode怎么运行代码

vscode是一个运行于MacOS X、Windows和Linux之上的,针对于编写现代Web和云应用的跨平台源代码编辑器;vscode免费而且功能强大,对JavaScript和NodeJS的支持非常好,自带很多功能,例如代码格式化,代码智能提示补全、Emmet插件等。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

2023.07.21

2712

3

vscode使用的框架介绍
vscode使用的框架介绍

VSCode是一款跨平台代码编辑器,它基于Electron框架和Monaco Editor构建。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.14

1929

12

vscode一般用来写什么语言
vscode一般用来写什么语言

VSCode是一款功能强大的代码编辑器,支持多种编程语言和文件格式。它内置对 JavaScript、Python、Java、C++、TypeScript、HTML/CSS、Go 等语言的支持。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.14

1727

8

vscode可以写什么语言
vscode可以写什么语言

vscode是一款强大的代码编辑器,支持多种编程语言的开发。通过安装扩展,可以为 JavaScript/TypeScript、Python、Java、C#、PHP、Go、Ruby、Rust、HTML/CSS 等语言提供智能代码补全、调试和格式化等功能。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.15

2587

12

vscode中文设置方法
vscode中文设置方法

方法一:在设置页面中,搜索“locale”,并选择“zh-cn”。方法二:按“Ctrl Shift P”快捷键,输入“Configure Display Language”,将语言修改为“zh-cn”。如果上述方法无效,可考虑安装中文插件。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.15

1818

14

vscode用途介绍
vscode用途介绍

Visual Studio Code(VSCode)是一款由 Microsoft 开发的多功能文本编辑器,适用于各种编程语言。作为一款开源软件,VSCode 拥有代码高亮、自动补全、调试、Git 集成等强大功能,成为程序员不可或缺的工具。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.15

1242

10

vscode和visualstudio的区别
vscode和visualstudio的区别

Visual Studio是一款功能强大的集成开发环境(IDE),适用于专业开发人员进行复杂项目的构建。而VSCode则是一款轻量级的代码编辑器,更适合各种规模的项目开发。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.15

1116

8

vscode设置中文界面不生效解决方法
vscode设置中文界面不生效解决方法

vscode设置中文界面不生效解决方法:安装中文语言包、通过命令面板设置语言、检查 locale.json 设置、重新安装中文语言包、检查 VSCode 版本和更新、排除插件冲突、检查系统语言设置、查看 VSCode 日志和错误消息、重置 VSCode 设置、查看官方文档和社区支持。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.15

474

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Codebuddy 插件
Codebuddy 插件

共0课时 | 0人学习

Fitten Code官方手册
Fitten Code官方手册

共0课时 | 0人学习

3分钟内将Xdebug安装到PHP
3分钟内将Xdebug安装到PHP

共1课时 | 164人学习