无法使PyDev远程调试在Eclipse中正常工作

1 投票
1 回答
562 浏览
提问于 2025-04-18 11:21

每次我启动调试服务器并尝试在我的代码中添加一个断点时,都会出现:

Traceback (most recent call last):  
File "/usr/lib/python2.7/dist-packages/pydev/pydevd.py", line 711, in processNetCommand  
    breakpoint_id = int(breakpoint_id)
ValueError: invalid literal for int() with base 10:    
'C:\\Users\blah\blah\\blah\\blah\\blah\\debugger.py'

我正在使用PyDev远程调试。

1 个回答

0

看起来,提供正确数据给PyDevd的Java接口发生了变化。现在,包含文件、行号、函数和条件信息的字符串里,断点的ID似乎不再被放在前面了。

我通过修改pysrc/pydevd.py文件中的processNetCommand函数让它重新工作了。

我把这些行(与添加断点有关的):

 710                     breakpoint_id, file, line, condition = text.split('\t', 3)
 711                     breakpoint_id = int(breakpoint_id)

改成了

 710                     file, line, condition = text.split('\t', 2)
 711                     breakpoint_id = seq

还有这些(用于移除断点的):

 753                     breakpoint_id, file = text.split('\t', 1)
 754                     breakpoint_id = int(breakpoint_id)

改成了

 753                     file = text.split('\t', 1)
 754                     breakpoint_id = seq

之后我就可以开心地进行调试了。

撰写回答