Как порождать сервисы перед запуском отладки / запуска в Visual Studio Code? - PullRequest
0 голосов
/ 22 февраля 2020

У меня есть требование запустить сервер Redis перед запуском приложения run / debug Django и, возможно, остановить процесс, когда отладка остановлена. Я просмотрел документацию и использовал preLaunchTask для запуска службы redis, однако VS Code ожидает завершения работы Redis, прежде чем он сможет запустить Django сервер. Я хочу, чтобы Redis работал в фоновом режиме, а VS Code запускал приложение Django параллельно. Вот мой запуск. json и задачи. json.

запуск. json (операционная система macOS)

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Python: Django",
            "type": "python",
            "request": "launch",
            "preLaunchTask": "start-redis",
            "program": "${workspaceFolder}/manage.py",
            "args": [
                "runserver",
                "--noreload"
            ],
            "console": "internalConsole",
            "django": true,
        }
    ]
}

задач. json

{
    "version": "2.0.0",
    "tasks": [{
        "label": "start-redis",
        "command": "/usr/local/bin/redis-server",
        "type": "process",
        "isBackground": false
    }]
}

Когда я начинаю отладку с вышеуказанной конфигурацией, VS Code запускает сервер Redis в терминале, но ожидает, что эта задача "завершится", прежде чем он сможет запустить Django. Я попытался установить "isBackground" : true, теперь VS Code выдает ошибку The specified task cannot be tracked, а сервер Django не запускается. Я попытался установить presentation переменные в задачах. json и запустить redis в своем собственном терминале, это тоже не сработало. Я попытался запустить задачу redis в качестве команды оболочки /usr/local/bin/redis-server &, которая тоже не работала, процесс немедленно завершается.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...