几天来,我一直在尝试使PyDev的远程调试功能运行不成功。我的主要问题(目前只有一个)是我不知道如何正确地将远程路径映射到我的本地路径上,反之亦然,以便使断点正常工作。我已经阅读了these instructions,并在此处针对该主题浏览了一些Q / A。我想知道使这些断点正常运行的确切步骤。
在我的情况下,这是一个在远程Debian 9系统上运行的Python应用程序,我想从我的本地Windows 7主机使用Eclipse中的PyDev 6.4.3进行调试。 在这种情况下,主机是什么,目标是什么?我必须在Windows或Linux机器上配置路径映射吗?甚至是两者?
我尝试在Eclipse中的 Preferences / PyDev / Debug / Source Locator 下对其进行配置。我在Windows和Linux上都将它们设置为环境变量 PATHS_FROM_ECLIPSE_TO_PYTHON 。没有任何帮助,在我的Linux机器上,我只收到消息
pydev debugger: warning: trying to add breakpoint to file that does not exist
我没有其他选择了,我真的很想知道这样做的正确方法。任何帮助表示赞赏。
答案 0 :(得分:0)
因此,我终于找到了适合我的设置的配置。总结一下:
pip install pydevd
)的Linux机器上运行显然,必须在目标计算机上配置路径映射(托管要调试的应用程序的路径映射,因此在我的情况下,这将是Linux计算机)。这可以通过两种方式(在Linux上)完成:
将它们直接粘贴到pydevd_file_utils.py
中(在我的Linux系统上,它位于 /usr/local/lib/python2.7/dist-packages / 中):
PATHS_FROM_ECLIPSE_TO_PYTHON = [
('Remote Path 1', 'Local Path 1'),
('Remote Path 2', 'Local Path 2'),
...
]
在启动应用程序之前将它们作为环境变量(例如export PATHS_FROM_ECLIPSE_TO_PYTHON='[["Remote Path 1", "Local Path 1"], ["Remote Path 2", "Local Path 2"], ...]'
)传递
在我的情况下,远程路径将是Windows计算机上的项目路径(例如C:\\Users\\workspace\\project\\
),而本地路径将是Linux主机上的项目路径({ {1}})。请注意,我必须在路径上添加反斜杠,因为否则PyDev会将路径转换为类似/home/user/project/
的路径,这将导致文件未知。因此,我还不得不在Windows路径中转义反斜杠。
希望这可以帮助遇到像我这样的类似困难的人。