>백엔드 개발 >Golang >Visual Studio Code의 디버거가 Go 프로그램용 빌드 태그를 사용할 수 있나요?

Visual Studio Code의 디버거가 Go 프로그램용 빌드 태그를 사용할 수 있나요?

Patricia Arquette
Patricia Arquette원래의
2024-10-24 13:18:02315검색

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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.