Mẫu launch config app Golang trong VS Code

Hi Vtitans,
Bài này ngắn lắm, mình chỉ share cái launch config để debug app của mình thôi. Do document hơi ít ví dụ nên mình nghĩ là có ích.

Đây ạ:

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Launch Package",
            "type": "go",
            "request": "launch",
            "mode": "debug",
            "program": "${workspaceFolder}/cmd/server/",
            "env": {"SOME_KEY":"some_value"},
            "args": ["-c", "./config.toml", "-d", "blah"],
            "cwd": "${workspaceFolder}"
        }
    ]
}

Đầu tiên, bạn Run app từ menu của VS Code, VS Code sẽ tạo ra file .vscode/launch.json với mấy dòng default. Nếu nó chạy được thì vui rồi, bạn chẳng phải làm gì cả.

!!!Lưu ý gitignore folder .vscode nhé bạn

Trong trường hợp của mình, những config sau phải sửa hoặc thêm vào:

  • program: import pathhhhhhhh, ôi thôi đi, folder chứa main.go
  • thêm cwd
  • env: tập biến môi trường
  • args: giống như commandline argument nhưng chỗ này dễ lúng túng. Tip là: nếu commandline bạn viết thế nào thì ở đây bạn viết thế nhưng mỗi một space trong commandline (mà không bị quote, ôi xời ơi) thì tương đương với một phần tử của mảng. Giống Dockerfile CMD.

Để đối chiếu, config trên tương đương với các lệnh sau:

# Tại folder chứa go.mod
export SOME_KEY="some_value"
go run ./cmd/server/ -c ./config.toml -d blah

Và cấu trúc project sau:

__ workspaceFolder
   |__  go.mod
   |__ cmd
        |__ server
             |__ main.go
   |__ config.toml

Cái document đầy đủ nhưng đọc xong vẫn phải mày mò =))) thì đây: https://github.com/golang/vscode-go/blob/master/docs/debugging.md#launch-configurations

Thân, from Châu D9

Leave a Reply

Your email address will not be published. Required fields are marked *