在VS Code中如何在多个文件中设置断点?

11

我有一个包含多个文件/模块的 Python 项目,正在尝试进行调试。我已经安装了Python 扩展 ,并在其中放置了一堆断点-有些在当前文件中,而有些在其他文件/模块中。当前文件中的断点可以正常工作,但是其他文件/模块中的断点无法正常工作。我在设置调试器时是否遗漏了某个步骤?在 Google 上没有找到针对这个特定问题的任何信息,教程只显示在一个文件中进行调试,而且也可以正常工作。如果我尝试右键单击并转到另一个模块中的任何函数定义,也可以正常工作,因此项目知道多个模块(我在 VS Code 中打开了整个目录),只是断点不起作用。


同样的问题。期望答案很简单,只是一个设置、偏好或者在 launch.json 中添加一些内容。肯定是一个常见的用例。 - gseattle
2个回答

19

遇到了同样的问题。如果你仍然需要知道,这是我如何解决的。

  1. 在VS Code中创建一个工作区
  2. 将您想要的文件夹添加到工作区,并添加所有所需的文件。 我们需要这样做来创建launch.json文件
  3. 单击“调试”图标或按Ctrl + Shift + D
  4. 单击顶部调试侧边栏中的齿轮图标。 它会说打开launch.json
  5. 如果未创建,则会自动为其创建,它应该如下所示:
{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Python: Current File",
            "type": "python",
            "request": "launch",
            "program": "${file}",
            "console": "integratedTerminal"
        }
    ]
}

  1. 加入 justMyCode,但将其设置为false。
{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Python: Current File",
            "type": "python",
            "request": "launch",
            "program": "${file}",
            "console": "integratedTerminal",
            "justMyCode": false
        }
    ]
}

  1. 保存并开始调试。现在您应该能够进入其他模块。

以下是调试屏幕配置的截图: Python debug configuration

如果您不想调试其他模块或执行其他操作,可以创建不同的配置。


0

我相信这是新版本中的一个错误。我安装了2018.9.1版本,它可以正常工作。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接