You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何无需修改源码为Bazel Python项目集成VSCode调试器?

Bazel单仓Python目标VSCode调试问题(无需修改源码)

我维护一个基于Bazel构建的单仓(monorepo)Python项目,希望不修改源码,仅通过debugpy模块实现VSCode调试器的集成。

尝试的无效方案

我用--run_under参数启动debugpy代理,命令如下:

bazel run --run_under="debugpy --listen 0.0.0.0:5678 --wait-for-client" //path/to/target/tests:dummy_tests

对应的VSCode launch.json配置为:

{
  "configurations": [
    {
      "type": "debugpy",
      "request": "attach",
      "name": "Attach to a running debugpy",
      "debugServer": 5678
    }
  ]
}

执行后,进程确实会等待我附加调试器,但调试器连接后,测试直接运行完毕,设置的断点完全没有触发。

有效的对比方案(需修改源码)

如果在测试代码中手动添加debugpy初始化代码:

import debugpy
debugpy.listen(5678)
debugpy.wait_for_client()

再直接运行Bazel目标:

bazel run //path/to/target/tests:dummy_tests

此时断点能正常命中,调试功能完全正常。


内容的提问来源于stack exchange,提问作者Michael Becker

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 03:24:55