+-

我想调试一个python文件,这个文件有一些依赖关系,而这些依赖关系只出现在项目的 runfiles 从 bazel。我如何使用vscode调试器调试一个bazel构建的文件?
2
投票
投票
正如某位名人所说,"是的,我们可以"。
你需要使用 "ptvsd "python包。
一次性设置
在Bazel中添加 "ptvsd "作为Python依赖。 在VS代码中,在你的launch.json 文件,添加以下配置。
{
"name": "Python: Attach",
"type": "python",
"request": "attach",
"port": 5724,
"host": "localhost"
},
Debug
当你想调试一个特定的文件时。
在你想调试的Python文件中,添加以下行。import ptvsd
ptvsd.enable_attach(address=('localhost', 5724), redirect_output=True)
print('Now is a good time to attach your debugger: Run: Python: Attach')
ptvsd.wait_for_attach()
像平常一样在这个文件上运行 Bazel (
bazel run :server 例如) 执行将停止在 "现在是连接调试器的好时机"。运行: Python: 附加" 在VS Code中,点击 "Python: 我们之前设置的 "Attach "调试选项。
可以随意更改端口,本例中为5724。