如何在VSCode中调试Golang Cobra CLI应用程序

3

我有一个使用golang cobra编写的cli应用程序。我已经为调试配置了我的vscode。我想使用vscode调试我的应用程序中的特定命令。

我正在使用这个launch.json

        {
            "name": "Launch Package",
            "type": "go",
            "request": "launch",
            "mode": "debug",
            "program": "${fileDirname}"
        }

如果我选择 main.go 并开始调试,它只会打印我的命令的帮助信息。如何在 vscode 中调试特定的 cli 子命令?比如说 abc create 或 abc version。
如果我选择一个子命令包并进行调试,它会显示:无法启动:无法启动进程:不是可执行文件。
1个回答

4
您可以配置VSCode启动配置来传递参数,方法如下:
        {
            "name": "Launch Package",
            "type": "go",
            "request": "launch",
            "mode": "debug",
            "program": "${fileDirname}"
            "args": ["arg1", ...]
        }

注意,你可能更喜欢在program字段中写入你的主go文件路径,这样无论你当前在哪个文件上,都可以运行/调试。
参考:

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接