在VSCode中使用RUST cargo run任务带参数

9
有没有办法在作为VS CODE任务运行的RUST货车命令中指定参数?或者我应该尝试将其作为NPM脚本来执行?(当然,这是RUST,所以我正在使用CARGO和npm,创建一个package.json可能会很奇怪)。
构建任务正常工作:
"version": "2.0.0",
"tasks": [
    {
      "type": "cargo",
      "subcommand": "build",
      "problemMatcher": [
        "$rustc"
      ],
      "group": {
        "kind": "build",
        "isDefault": true
      }
},

但我不知道在哪里放参数,因为我希望它是

$cargo run [filename]


{
  "type": "cargo",
  "subcommand": "run",
  "problemMatcher": [
    "$rustc"
   ]
}
1个回答

5

确实有这个功能,args选项允许您向任务传递其他参数,并且您可以使用各种${template}参数来传递一些像当前打开的文件之类的东西。

另外值得一提的是,命令的类型应该是shell,而cargo被指定为命令本身。

对于您的用例,您可以考虑使用以下方式(执行cargo run $currentFile)。

{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "run",
            "type": "shell",
            "problemMatcher": [
                "$rustc"
            ],
            "command": "cargo",
            "args": [
                "run",
                "${file}"
            ]
        }
    ]
}

4
虽然你说的针对“shell”任务是正确的操作方式,但是“cargo”类型的任务是由Rust(rls)扩展自动生成的,因此没有直接的方法来为该类型的任务添加参数。 - Miguel Bartelsman

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接