如何使用Visual Studio Code进入依赖代码?

法布兹

调试用户代码时,我想进入已安装的依赖项的代码,例如使用pip install -e path/to/package

我试图在项目中找到一个列出依赖项的地方,并且可以浏览该地方以打开源文件进行调试(例如,可以在PyCharm中通过“外部库”部分进行此操作)。

我想进入并通过依赖项代码,但找不到解决方法。

吉诺·曼宾(Gino Mempin)

内置调试配置应该可以实现。据我所知,唯一不可能的是Python依赖项是C代码(例如OpenCV,pygame),因为它们存储为.so文件而不是Python文件。

假设我具有以下结构:

main
└── test.py
pkgs
└── mypkg
    ├── __init__.py
    ├── moduleA.py
    └── setup.py

我是mypkg根据Python文档中的Packaging Python Projects示例创建然后,使用您提到的相同命令将其安装在我的环境中:

pip install -e /path/to/mypkg

在test.py我有这个:

import moduleA
moduleA.add_two_num(1, 2)

首先,请确保将VSCode解释器设置为使用与安装时相同的env mypkg请参阅VSCode文档中的选择并激活环境

接下来,为test.py创建调试配置

{
    "name": "test",
    "type": "python",
    "request": "launch",
    "cwd": "${workspaceFolder}",
    "program": "/path/to/test.py",
    "pythonPath": "/path/to/.virtualenvs/test-py37/bin/python",
    "console": "integratedTerminal",
}

在这里再次重要的pythonpath一点是要指向python安装位置mypkg在这里,我使用了一个名为的virtualenv test-py37

现在,在外部包的行上设置一个断点:

断点

然后启动调试器(F5在“调试”面板中或选择它,然后按“播放”按钮)。当调试器在断点处停止时:步入

只需按“跳入”按钮(或F11),“ VS代码”将带您进入外部依赖项的代码。您也可以直接在VS Code上打开文件,然后在其上放置断点。在编辑器上打开它之后,下次调试时,它将在这些断点处停止。

依赖断点

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使Visual Studio Code使用Visual Studio IDE按键绑定?

如何使用Visual Studio代码调试Django

如何覆盖 Visual Studio Code 源代码

使用 Visual Studio 代码,编码 vb.net,如何启动我的程序然后进入调试模式?

如何从Visual Studio Code加载Bower依赖关系?

如何使用节点js创建条件调试Visual Studio代码

如何导入的东西在Java中使用Visual Studio代码

如何导入的东西在Java中使用Visual Studio代码

如何使用Jasmine和Visual Studio代码运行特定的测试?

如何使用vim模式删除Visual Studio代码上的空行

如何使用python代码在visual studio中运行for循环

如何在Visual Studio代码中使用.gitignore?

如何使用 Visual Studio CppUnitTestFramework 访问我的代码

使用Visual Studio调试时如何编辑代码?

如何使用我下载的Visual Studio编译C ++源代码

如何使用浏览器打开 Visual Studio 代码

如何在 Visual Studio 代码中使用 javafx

如何放大 Visual Studio 代码?

如何在Ubuntu中使用Visual Studio Code编译C ++代码?

如何使用Visual Studio Code在浏览器中查看HTML代码?

如何在Visual Studio Code中使用Django Shell调试Django(逻辑)代码

如何从Visual Studio Code的上下文菜单中删除“使用代码打开”?

如何使用Regex在Visual Studio Code的代码段中“大写并替换”?

如何使用Regex在Visual Studio Code的代码片段中“大写和替换”?

使用python的Visual Studio代码

如何使用Visual Studio Code显示隐藏文件

如何在Visual Studio Code中使用Typescript进行TDD?

如何使用Visual Studio Code引用程序集?

如何在Visual Studio Code中使用Cmder?