0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

VSCodeでPoetryのプロジェクトをデバッグする方法

Last updated at Posted at 2023-10-14

概要

Poetryを使ってデバッグするときの初期構築に手間取ったので手順を載せておきます。

launcher.jsonの作成

例えば以下のプロジェクト内のskybrush-server/src/flockwave/server/launcher.pyをデバッグしたいとします。

skybrush-server
├─.venv
├─.vscode
├─doc
├─etc
├─src
│  └─flockwave
│      ├─gateway
│      ├─proxy
│      └─server
│          ├─command_handlers
│          ├─ext
│          ├─middleware
│          ├─model
│          ├─registries
│          ├─show
│          ├─tasks
│          ├─utils
│          ├─launcher.py
│          └─__pycache__
├─.dockerignore
├─.gitattributes
├─.gitignore
├─.pre-commit-config.yaml
├─CHANGELOG.md
├─LICENSE.txt
├─poetry.lock
├─poetry.toml
├─pyproject.toml
├─pytest.ini
├─README.md
├─tbump.toml
├─tox.ini
└─test
    └─fixtures

その場合skybrush-server直下で下記の手順を実施します。

  1. デバッグ実行画面からlaunch.jsonファイルを作成する。
    image.png

  2. launch.jsonファイルの設定に下記を入力します。

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "flockwave",
            "type": "python",
            "request": "launch",
            "cwd": "${workspaceFolder}",
            "module": "flockwave.server.launcher",
            "args": []
        }
    ]
}

settings.jsonの作成

このままだとpoetryの仮想環境が読み込めなかったので、settings.jsonを設定して自動で読み込むようにします。

1.Poetryのプロジェクトフォルダ内で以下のコマンドを実行し、仮想環境があるパスを取得します。

poetry config virtualenvs.path

2.コマンドパレットからOpen Workspace Settings(JSON)を起動します。
image.png

3.仮想環境の設定を行います。

settings.json
{
    "python.pythonPath": 取得したパス
}

実行

実行ボタンを押して完了です。
image.png

↓ターミナルの表示の例
image.png

0
1
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
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?