在windows环境下试图自己实现一个debug adapter protocol的client,调试适配器使用的graalpy,通过“graalpy --dap test.py”创建子进程并使用socket进行通信。目前initialize,configurationDone和next等功能都正常,但是setBreakpoints一直没法打上断点(收到的响应里显示断点状态为verified:fase),有大佬遇见过这个情况吗?
setBreakpoints报文:
Content-Length: 237
{"arguments":{"breakpoints":[{"line":5},{"line":10}],"source":{"name":"test.py","path":"C:\\Users\\user\\Desktop\\test\\test.py","sourceReference":30},"sourceModified":false},"command":"setBreakpoints","seq":18,"type":"request"}
响应:
{"success":true,"body":{"breakpoints":[{"line":5,"verified":false,"id":1},{"line":10,"verified":false,"id":2}]},"type":"response","request_seq":18,"command":"setBreakpoints","seq":33}
查看断点位置的响应:
{"success":true,"body":{"breakpoints":[]},"type":"response","request_seq":19,"command":"breakpointLocations","seq":34}
改过报文参数、报文顺序和路径格式,但是都不行。