VS Code通过范围传播单个环境变量

时间:2018-09-22 21:26:03

标签: visual-studio-code vscode-tasks

我正在尝试设置一个可以在多个平台上运行的任务。为此,我需要在不同的范围内定义变量,并且可能要传播特定于OS的变量。不幸的是,似乎整个环境都被覆盖了,而不是在每个变量的基础上添加/替换。

例如,在Mac上运行以下示例任务时,我希望定义VAR1,VAR3,VAR4,但我只会得到VAR4。

{
  "version": "2.0.0",
  "options": {
    "env": {
      "VAR1": "valx"
    }
  },
  "linux": {
    "options": {
      "env": {
          "VAR2": "valy"
      }
    }
  },
  "tasks": [
    {
      "label": "Clear console",
      "type": "shell",
      "command": "printenv",
      "options": {
        "env": {
          "VAR3": "valw"
        }
      },
      "macosx": {
        "env": {
          "VAR4": "valq"
        }
      }
    }
  ]
}

有什么办法可以做到这一点?

0 个答案:

没有答案