我想使用cpx作为Visual Studio Code中我的一个调试配置的后台任务。但它没有输出并导致此错误:
由于cpx在不到一秒的时间内完成了它的工作,我不需要跟踪它。有没有办法告诉VS Code只是为了运行任务而不是跟踪它?
这是我的tasks.json
:
{
"version": "2.0.0",
"tasks": [
{
"script": "cpx",
"type": "npm",
"isBackground": true
}
]
}
答案 0 :(得分:1)
如果您只想执行一次任务,只需设置isBackground: false
。
否则,在Visual Studio Code启动调试器之前,它需要知道后台任务何时完成其初始作业。它通过使用问题匹配器观察任务输出而发生,但正如您所指出的,默认情况下cpx不会输出任何内容。这是我的建议:
--verbose
标记传递给cpx,这会给我们一些以Be watching...
{
"version": "2.0.0",
"tasks": [
{
"script": "cpx",
"type": "npm",
"isBackground": true,
"problemMatcher": {
"background": {
"activeOnStart": true, // monitoring should happen immediately after start
"beginsPattern": "^whatever", // irrelevant
"endsPattern": "^Be watching.*" // pattern indicating that task is done
},
// we don't need pattern section but it's required by the schema.
"pattern": [
{
"regexp": "^whatever",
"file": 1,
"location": 2,
"message": 3
}
]
}
}
]
}