我们今天来配置下vscode+rust。
vscode开发rust很方便。但配置有点坑,我们都认为vscode很简单,很完善。
但这里很多同学也出现不少问题。
我们在这里简单记录下win7下配置的过程,跟着我一步步来,应该就可打造你的屠龙宝刀。
首先,我们安装插件:
Rust Extension Pack
Rust Test Explorer
然后打开上一篇文章的工程:
hello-rust
,见:https://www.cnblogs.com/gyc567/p/11887935.html
打开command palette (Ctrl-Shift-P):输入:build,然后选择:Tasks: Configure Default Build Task,再选择:Rust: cargo build
vscode会自动生成一个json文件:
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
"label": "cargo run",
"type": "shell",
"command": "cargo",
"args": [
"run"
],
"group": {
"kind": "build",
"isDefault": true
}
}
这里,我们直接按“CTRL+SHIFT+P”,选择:“Task:Run Build Task”,或者直接按快捷键“CTRL+F9”
扫描二维码关注公众号,回复:
7916435 查看本文章
VSCODE会自动BUILD,并在终端窗口显示打印结果:
-------------------------------------------------------
> Executing task: cargo run <
Compiling hello-rust v0.1.0 (E:\code\rustProject\hello-rust)
Finished dev [unoptimized + debuginfo] target(s) in 2.11s
Running `target\debug\hello-rust.exe`
----------------------------
| Hello fellow Rustaceans! |
----------------------------
\
\
_~^~^~_
\) / o o \ (/
'_ - _'
/ '-----' \
Terminal will be reused by tasks, press any key to close it.
Compiling hello-rust v0.1.0 (E:\code\rustProject\hello-rust)
Finished dev [unoptimized + debuginfo] target(s) in 2.11s
Running `target\debug\hello-rust.exe`
----------------------------
| Hello fellow Rustaceans! |
----------------------------
\
\
_~^~^~_
\) / o o \ (/
'_ - _'
/ '-----' \
Terminal will be reused by tasks, press any key to close it.
--------------------------------------------------------------
下面配置测试task:
先在main函数下面增加测试代码:
#[test] fn should_fail() { unimplemented!(); }
保存后,按快捷键:“CTRL+SHIFT+P”,输入:Task,选择“Tasks: Configure Default Test Task”,然后选择:“Rust: cargo test”
vscode自动生成:
{
"type": "cargo",
"subcommand": "test",
"problemMatcher": [
"$rustc"
],
"group": {
"kind": "test",
"isDefault": true
}
}
保存后,按按快捷键:“CTRL+SHIFT+P”,输入:Task:Run test Task,回车。
vscode自动运行测试用例,并打印结果:
---------------------------------------
> Executing task: cargo test <
Compiling hello-rust v0.1.0 (E:\code\rustProject\hello-rust)
Finished dev [unoptimized + debuginfo] target(s) in 1.77s
Running target\debug\deps\hello_rust-bfa762df5afd173e.exe
running 1 test
test should_fail ... FAILED
failures:
---- should_fail stdout ----
thread 'should_fail' panicked at 'not yet implemented', src\main.rs:14:5
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace.
failures:
should_fail
test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out
error: test failed, to rerun pass '--bin hello-rust'
The terminal process terminated with exit code: 1
Terminal will be reused by tasks, press any key to close it.
-----------------------------------------------------------
如果,你顺利走到这一步,恭喜你,你已经基本配置好rust的开发环境。
如果遇到什么问题,欢迎加入:rust新手群,在这里我可以提供一些简单的帮助,加微信:360369487,注明:博客园+rust