ビルド タグを使用した Go プログラムのデバッグは、特に Visual Studio Code と Delve デバッガーを使用する場合に困難になることがあります。
元の質問:
Go プログラムのコンパイル時に指定されたビルド タグを使用するようにデバッガーを構成できますか?
回答:
Visual Studio Code の Go プラグインは、launch.json の buildFlags キーをサポートするようになりました。これにより、開発者は「-tags Tag」形式を使用してビルド タグを指定できます。
構成:
タグ付きバイナリをビルドするためのタスク:
<code class="json">{ "version": "0.1.0", "command": "bash", "isShellCommand": true, "args": [""], "showOutput": "always", "tasks": [ { "taskName": "buildBinWithTag", "command": "go", "args": ["build", "-o", "BinaryName", "-tags", "THISISATAG"], "isShellCommand": true } ] }</code>
デバッグ用の起動構成:
<code class="json">{ "version": "0.2.0", "configurations": [ { "name": "DebugBinWithTag", "type": "go", "request": "launch", "mode": "exec", "remotePath": "", "port": 2345, "host": "127.0.0.1", "program": "${workspaceRoot}/BinaryName", "env": {}, "args": [], "showLog": true, "preLaunchTask": "buildBinWithTag" } ] }</code>
例:
ビルド タグ「 build THISISAFLAG」の使用:
<code class="go">//+build THISISAFLAG package main</code>
起動構成:
<code class="json">{ "version": "0.2.0", "configurations": [ { "name": "DebugWithTag", "type": "go", "request": "launch", "mode": "exec", ... "buildFlags": "-tags THISISAFLAG", ... } ] }</code>
この構成により、デバッガーがコンパイル中に指定されたビルド タグを使用するようになり、次の実行とデバッグが可能になります。タグに依存するさまざまな構成を持つ Go プログラム。
以上がVisual Studio Code のデバッガーは Go プログラムのビルド タグを使用できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。