Go build したバイナリをVscodeでデバッグモードで実行する

2020-12-10

表題の通り、Go build したバイナリをVscodeでデバッグモードで動かそうとして
launch.jsonの設定を色々試していたらデバッグモード動かせたので書きます。

前提

Go言語の拡張機能をインストール
delveをインストール済み

結果

launch.json settings

{
    // Use IntelliSense to learn about possible attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Launch",
            "type": "go",
            "request": "launch",
            "mode": "exec",
            "program": "${workspaceRoot}/build/darwin_amd64/binaryfile",
            "args": [
                "serve",
                "${workspaceRoot}/.env.dev"
            ],
            "buildFlags": "-tags 'development'",
        }
    ]
}

タグ説明

program

任意のデバッグ対象の実行ファイル、エントリポイント等の指定する

mode

“exec” を指定することでプログラムで指定されたバイナリを実行する。

args

引数をstringで配列指定
環境設定ファイルがある場合もここで指定可能。
env等はパスを正しく指定することを注意。読み込まれなければ多分パス指定ミス。

F5で正常にデバッグモードで立ち上がれば成功!