VSCode-在节点调试终端中未定义settings.json中设置的环境变量

时间:2018-11-01 02:52:00

标签: visual-studio-code

我在settings.json中设置了一个环境变量:

{
    "terminal.integrated.env.linux": {
        "GOOGLE_APPLICATION_CREDENTIALS": "${env:HOME}/xyz.json"
    },
    "terminal.integrated.shellArgs.linux": ["-l"]
}

我可以确认在集成终端中设置正确。

当我在Node中调试时,相同的变量显示为undefined。这是预期的行为吗?

我也可以通过在launch.json中定义它来解决这个问题:

{
    "version": "0.2.0",
    "configurations": [
        {
            "type": "node",
            "request": "launch",
            "name": "Launch Program",
            "program": "${workspaceFolder}/server.js",
            "env": { "GOOGLE_APPLICATION_CREDENTIALS": "${env:HOME}/xyz.json" }
        }
    ]
}

但是我理想的情况是只在一个地方定义它并完成它。

是的,我也可以在.profile中定义它,并通过settings.json中的“ terminal.integrated.shellArgs.linux”:[“ -l”]选项将其传递给VSCode,但是还有其他原因我没有这样做不想这样做。

有想法吗?

0 个答案:

没有答案