我有一个版本0.1.0的任务,我尝试迁移到2.0.0。
此任务只是使用Gulp脚本将Typescript转换为Javascript。输出显示在"输出"控制台,没有涉及终端,我希望它保持这种方式(主要是因为臭名昭着的消息" Terminal will be reused by tasks, press any key to close it.
"在终端任何命令的末尾!)。
我无法看到如何将此任务迁移到版本2.0.0,因此不涉及终端!
此处的版本为 0.1.0 :
{
"version": "0.1.0",
"command": "${workspaceRoot}/node_modules/.bin/gulp",
"isShellCommand": true,
"showOutput": "always",
"suppressTaskName": true,
"tasks": [
{
"taskName": "compile",
"args": [
"compile",
"exit"
],
"isBuildCommand": true,
"problemMatcher": "$tsc"
}
]
}
这是我目前尝试的版本 2.0.0 :
{
"version": "2.0.0",
"tasks": [
{
"identifier": "compile",
"type": "shell",
"taskName": "compile",
"presentation": {
"echo": true,
"reveal": "always",
"focus": true,
"panel": "new"
},
"command": "${workspaceRoot}/node_modules/.bin/gulp compile exit",
"problemMatcher": [
"$tsc"
],
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
此 显示集成终端中的输出。
如何让它使用输出控制台?
答案 0 :(得分:2)
建议使用任务面板,但是如果您确实需要使用输出面板。您需要实现CustomExecution并获取命令的输出。然后要写入输出面板,首先您需要创建一个专用的输出通道并对其进行写入:
let outputChannel = vscode.window.createOutputChannel('channelName');
outputChannel.appendLine('message');
答案 1 :(得分:1)
尝试将"reveal": "always",
更改为"reveal": "never",