Удаленная разработка VScode: Как я могу запустить задачу сборки с исходными переменными среды перед выполнением реальной задачи сборки? - PullRequest
0 голосов
/ 02 марта 2020

Я хочу настроить VScode, чтобы я мог использовать задачи сборки для сборки своего проекта. Проект строится с использованием make, я определил задачу сборки, которая запускает make. Однако, прежде чем запускать make, я обычно получаю скрипт, который правильно устанавливает переменные окружения. Если я добавлю новую задачу сборки с помощью команды source и в моих основных задачах сборки будет выполнено первое выполнение команды source, переменные среды не будут правильно распространяться. Как я могу убедиться, что переменные окружения хранятся между задачами сборки?

Мои задачи. json файл:

{
    // See https://go.microsoft.com/fwlink/?LinkId=733558 
    // for the documentation about the tasks.json format
    "version": "2.0.0",
    "tasks": [
        {
            "type": "shell",
            "label": "make",
            "command": "make",
            "args": [],
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "dependsOn": "Set environment"
        },
        {
            "label": "Set environment",
            "type": "shell",
            "command": "source path/to/source_me.sh",
            "group": "build",
   ]
}

1 Ответ

0 голосов
/ 04 марта 2020

Не таким образом. Получение файла - это добавление содержимого файла в текущий сеанс оболочки, который заканчивается, как только заканчивается задача. Задача make запускается в отдельном сеансе оболочки, поэтому эти два не взаимодействуют. Вы можете попытаться выполнить одну задачу, которая выполняет одну строку: source path/to/source_me.sh && make.

...