简体   繁体   中英

how to specify the path of generated debug binary file when debug go-lang in vs-code

How to specify the path of generated debug binary file when debug go-lang in vs-code?

I have tried modify launch.json file but not work. I can debug go programs well now in vs-code, the only problem is each time i finish debug, a debug binary file was generated under my project directory, like the picture below.

I want to know can i specify the directory of generated debug binary file?

I am on mac screen shot of my problem: 图片

This is followed by vscode-go issue 1345 : "Delete binary files created by delve after closing the debug session"

delve is the debugger for Golang, or at least it's the one that the Go extension uses.
When you debug something with delve, it creates a large binary file in the current directory. If you debug a main function ( dlv debug ), you get ' debug '. If you debug a test function ( dlv test ), you get ' debug.test '.

In normal delve usage, when you're done, you quit delve. Delve then deletes this file. Apparently VSCode gracelessly terminates (SIGKILL?) delve, which means the file sticks around.

So this is studied, but not yet resolved .


Update July 2018: Ramya Rao adds in this issue :

I finally have an update!

Turns out there is a command called Detach that can be called on the delve server which will result in the required clean up of the debug binary that gets generated .
To get this fix before the next update to the Go extension (which will be either Friday or early next week), please follow the below:

The fix worked for me as long as the program being debugged wasn't spawning processes of its own like a web server for which I have logged an upstream issue with delve.

I'd appreciate it if folks here can give the fix a try and share any feedback.

The change you need to do to provide an output path for the generated debug binary is in the launch.json file.
Use the property output in your debug configuration.
Please don't modify the package.json file.

此调试文件是在调试时由delve生成的,应在调试后将其删除,这似乎是vs-code的go扩展的错误,请参见此处的链接

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM