我正在尝试设置Visual Studio代码以防锈进行调试。在我的launch.json文件中,
id
在我的task.json中,我有
{
"version": "0.2.0",
"configurations": [
{
"name": "(Windows) Launch",
"type": "cppvsdbg",
"request": "launch",
"program": "${workspaceRoot}/target/debug/vscode-rust-debug-example.exe",
"args": [],
"stopAtEntry": false,
"cwd": "${workspaceRoot}",
"environment": [],
"externalConsole": true,
"preLaunchTask": "localcargobuildtask"
}
]
}
在我的任务中,“ echo hi”是我最终想要的东西,例如“货物建造”或“货物测试”等。但这只是一个开始。
但是当我按F5时,我得到的输出是
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
"label": "localcargobuildtask",
"command": "echo hi",
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
它不是在终端找到它的地方运行“ echo”(首先在工作目录中,然后像您期望的那样检查全局路径变量),实际上是在我的工作区的根文件夹中寻找一个名为“ echo”的程序。
如何告诉Visual Studio代码“不,我不希望您运行工作空间/回声,我希望您在工作空间中运行回声”?还是有另一种更直接的方式告诉Visual Studio代码“在调试之前对其进行编译”?
答案 0 :(得分:0)
这个问题的答案How to debug Rust unit tests on Windows? 建议改变
"command": "cargo build",
进入
"command": "cargo",
"args": [
"build"
],
task.json文件中的可以正常工作并且可以正常工作。也许编辑器已配置为在%path%中搜索单个单词命令,或者也许我安装的某些插件覆盖了“ cargo”命令。可能未找到echo的原因是因为它是终端命令,而不是程序。也许错误消息是一个谎言,它只是报告尽管检查%path%也找不到工作区文件夹\命令?也许这些都不是。我不知道。这是一些很特殊的行为。