我正在尝试创建一个启动配置,其中环境变量由 shell 脚本动态确定。尽管命令变量可以通过 启动任务workbench.action.tasks.runTask,但似乎无法指定要运行的任务。在这方面,输入变量似乎更灵活一些,但我似乎无法让它发挥作用。这是我得到的:
启动.json:
{
"version": "0.2.0",
"configurations": [
{
"name": "Launch",
"type": "go",
"request": "launch",
"mode": "auto",
"program": "${workspaceFolder}/main.go",
"env": {
"XXX": "${input:foo}"
},
"args": []
}
],
"inputs": [
{
"type": "command",
"id": "foo",
"command": "workbench.action.tasks.runTask",
"args": {
"args": "bar",
}
}
]
}
Run Code Online (Sandbox Code Playgroud)
任务.json:
{
"version": "2.0.0",
"tasks": [
{
"label": "bar",
"type": "shell",
"command": "find /dev -name 'myspecialdevice*' -maxdepth 1"
}
]
}
Run Code Online (Sandbox Code Playgroud)
问题是仍然会询问用户要运行哪个任务。我inputs.args对launch.json的部分最不安全。我真的不知道键值应该是什么。也许实现有助于解决这个问题?