如何在 vscode 中调试 golang cobra cli 应用程序
how to debug golang cobra cli app in vscode
我有一个 golang cobra cli 应用程序。已配置我的 vscode 进行调试。我想为我的应用程序使用 vscode 调试特定命令。
我正在使用这个launch.json
{
"name": "Launch Package",
"type": "go",
"request": "launch",
"mode": "debug",
"program": "${fileDirname}"
}
如果我 select main.go 并开始调试,它只会打印我的命令的帮助。如何在 vscode 中调试特定的 cli 子命令?比如说 abc create 或 abc version
如果我 select 一个子命令包然后调试它说:启动失败:无法启动 process:not 一个可执行文件
您可以配置 VSCode 启动配置以使用以下参数传递参数:
{
"name": "Launch Package",
"type": "go",
"request": "launch",
"mode": "debug",
"program": "${fileDirname}"
"args": ["arg1", ...]
}
请注意,您可能更愿意在 program
字段中写入主 go 文件的路径,这样无论您当前在哪个文件上,都可以 run/debug。
参考:
我有一个 golang cobra cli 应用程序。已配置我的 vscode 进行调试。我想为我的应用程序使用 vscode 调试特定命令。
我正在使用这个launch.json
{
"name": "Launch Package",
"type": "go",
"request": "launch",
"mode": "debug",
"program": "${fileDirname}"
}
如果我 select main.go 并开始调试,它只会打印我的命令的帮助。如何在 vscode 中调试特定的 cli 子命令?比如说 abc create 或 abc version
如果我 select 一个子命令包然后调试它说:启动失败:无法启动 process:not 一个可执行文件
您可以配置 VSCode 启动配置以使用以下参数传递参数:
{
"name": "Launch Package",
"type": "go",
"request": "launch",
"mode": "debug",
"program": "${fileDirname}"
"args": ["arg1", ...]
}
请注意,您可能更愿意在 program
字段中写入主 go 文件的路径,这样无论您当前在哪个文件上,都可以 run/debug。
参考: