如何在Visual Studio代码中的launch.json中扩展$ PATH?

时间:2017-12-05 21:32:04

标签: debugging visual-studio-code

我有一些shell脚本,我想在Visual Studio Code中调试时通过代码执行名称。我需要扩展$ PATH环境变量来实现它。目前,我在launch.json中关注了json。

{
      "name": "Debug-Linux",
      "type": "go",
      "request": "launch",
      "mode": "debug",
      "remotePath": "",
      "port": 2345,
      "host": "127.0.0.1",
      "program": "${fileDirname}",
      "env": {
        "PATH": "$PATH:$(pwd)/../bin/" 
      },
      "showLog": true
}

另外,我已经尝试了

"env": {
      "PATH": "${env.PATH}:$(pwd)/../bin/" 
},

但是,它不起作用。如何在Visual Studio Code中的launch.json中扩展$ PATH环境变量?

3 个答案:

答案 0 :(得分:1)

我最终放弃了完成这项工作,但我所做的解决方法是在调试会话之前粘贴DOS命令以设置终端中的路径。类似的东西:

set PATH=C:\Python27\Lib\site-packages\pywin32_system32;%PATH%

有点难看,但至少它让我工作。我添加它作为对我的launch.json的评论,所以我随时可用。不完全确定会为你的Linux环境干净利落地转移,但值得一试(当然,对你正在使用的shell进行适当的语法更改)。

答案 1 :(得分:0)

Windows 平台上,我发现Visual Studio Code似乎区分大小写。如果变量名的拼写与计算机上的拼写不一致,则Visual Studio Code将忽略launch.json中的变量。

例如,要在拼写path时正确设置Path环境变量,您需要在launch.json中添加以下内容。

"env": {
      "Path": "${env:Path};${workspaceFolder}\\node_modules\\.bin" 
},

有关更多信息,请参见Visual Studio代码文档中的Launch.json attributesVariable Substitution。 这里提到了Variable Substitution下的变量框:

  

注意:请确保匹配环境变量名称的大小写,例如Windows上的$ {env:Path}。

这很奇怪,因为Windows对环境变量的名称不区分大小写

答案 2 :(得分:0)

根据documentation,您应该使用char* c = "ABCD"; 而不是char c[5] = {'A','B','C','D', 0};