[易学易懂系列|rustlang语言|零基础|快速入门|(2)]

· · 1840 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

我们今天来配置下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”




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.


--------------------------------------------------------------


 下面配置测试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.

-----------------------------------------------------------

下面继续配置DEBUG环境。

这里参照这个文章:https://www.forrestthewoods.com/blog/how-to-debug-rust-with-visual-studio-code/

简单来说,你按如下几步来配置就可以:

1.安装:

C/C++ extension.

Native Debug extension

2.在debug面板,新建一个新的配置,如下:


然后选择:“C++ (Windows)” environment


会自动生成launch.json代码,如下 :

{

// Use IntelliSense to learn about possible attributes.

// Hover to view descriptions of existing attributes.

// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387

"version":"0.2.0",

"configurations":[


{

"name":"(Windows) Launch",

"type":"cppvsdbg",

"request":"launch",

"program":"${workspaceFolder}/target/debug/hello-rust.exe",

"args":[],

"stopAtEntry":false,

"cwd":"${workspaceFolder}",

"environment":[],

"externalConsole":false

}

]

}

其中program的值改为你自己的exe的路径,比如我的就是:

${workspaceFolder}/target/debug/hello-rust.exe

这时,你直接按F5,你就进入debug状态,你现在可以设置断点了。

如果,你顺利走到这一步,恭喜你,你已经基本配置好rust的开发环境。

如果遇到什么问题,欢迎加入:rust新手群,在这里我可以提供一些简单的帮助,加微信:360369487,注明:博客园+rust

本人精通java高并发,DDD,微服务等技术实践,以及python,golang技术栈。

本人精通java高并发,DDD,微服务等技术实践,以及python,golang技术栈。

本人名字郭莹城,坐标深圳,前IBM架构师、咨询师、敏捷开发技术教练,前IBM区块链研究小组成员、多年架构设计工作经验,《区块链核心技术与应用》作者之一,

现有成熟团队提供区块链开发相关业务(公链,交易所,钱包,Dapp,智能合约)。

工作微信&QQ:360369487,交易所开发与区块链钱包开发业务,加我注明:博客园+开发,想学习golang和rust的同学,也可以加我微信,备注:博客园+golang或博客园+rust,谢谢!


原文:https://www.cnblogs.com/gyc567/p/11888103.html


有疑问加站长微信联系(非本文作者)

本文来自:简书

感谢作者:

查看原文:[易学易懂系列|rustlang语言|零基础|快速入门|(2)]

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1840 次点击  
加入收藏 微博
被以下专栏收入,发现更多相似内容
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传