ホームページ  >  記事  >  バックエンド開発  >  Visual Studio Code のデバッガーは Go プログラムのビルド タグを使用できますか?

Visual Studio Code のデバッガーは Go プログラムのビルド タグを使用できますか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-10-24 13:18:02199ブラウズ

Can Visual Studio Code's Debugger Use Build Tags for Go Programs?

Visual Studio Code と Delve でのデバッグ用のタグ付け

ビルド タグを使用した 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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。