LoginSignup
1
0

[Golang] VSCodeのGoプラグインを0.40.3 -> 0.41.xに更新したらブレークポイントデバッグができなくなった

Posted at

環境

  • golangで開発したAPIサーバーをDockerコンテナとして稼働させており、その中にデバッガdelveをインストールしてある。

  • delveとのデバッグ用通信ポート2345をローカル(Mac)側に外出ししてある。

  • Dockerコンテナ内のアプリケーションディレクトリは /app

  • VSCodeでブレークポイントデバッグするときは、Devcontainerでコンテナの中に入ったりはせず、ローカルから直接2345ポートに接続してデバッグしている。

docker-compose.yml
services:
    app:
        container_name: app
...
        ports:
            - 2345:2345
            - 8080:8080
...

↓ VSCodeでブレークポイントデバッグを実行するための設定。

launch.json
{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "debug app",
      "type": "go",
      "request": "attach",
      "mode": "remote",
      "remotePath": "/app",
      "cwd": "${workspaceRoot}/app",
      "port": 2345,
      "host": "localhost"
    }
  ]
}

問題

VSCodeのGoプラグイン 0.40.3 までは↑のlaunch.jsonでブレークポイントデバッグが出来ていたが、0.41.xに上げたら動作しなくなった。

どうやら

"remotePath": "/app",

が無視されて、ローカルの ${workspaceRoot}/app (例:/Users/yagrush/workspace/app) と同じパス以下を探しに行って「そんなパス無いよ!」と怒られている様子。

解決方法

launch.jsonを見直しした。

      "remotePath": "/app",

      "substitutePath": [{ "from": "${workspaceRoot}/app", "to": "/app" }],

無事動くようになりましたとさ。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0