4 个版本
0.1.3 | 2023年2月8日 |
---|---|
0.1.2 | 2023年2月8日 |
0.1.1 | 2023年2月8日 |
0.1.0 | 2023年2月8日 |
#435 in Cargo 插件
12KB
111 行
lrk
包
learn-rust 是一个包。一个 crate 是一个二进制文件或库。一个包可以有一个库 crate(lib.rs)和多个二进制 crate(main.rs,bin/*.rs,bin/*/main.rs)。(需要至少有一个库或二进制 crate。一个 workspace 可以包含多个包作为成员。)
cargo
https://doc.rust-lang.net.cn/stable/cargo/
配置
https://doc.rust-lang.net.cn/stable/cargo/reference/config.html https://doc.rust-lang.net.cn/stable/cargo/reference/environment-variables.html
将当前目录初始化为新项目
cargo init --bin # for binary(executable) crate
cargo init --lib # for library crate
可执行
- https://doc.rust-lang.net.cn/cargo/reference/cargo-targets.html#binaries
- https://doc.rust-lang.net.cn/cargo/guide/project-layout.html
- 单个可执行 main.rs
src/main.rs
cargo run
- 多个可执行
- 将除 main.rs 之外的其他二进制文件放在
src/bin
目录中。 src/main.rs
src/bin/another_executable.rs
src/bin/multi_files_executable/main.rs
- 你可以在 Cargo.toml 中设置
default-run
- 你应该将此值设置为不使用
--bin
选项执行cargo run
- 你应该将此值设置为不使用
- 将除 main.rs 之外的其他二进制文件放在
cargo run --bin learn-rust # to run main.rs
cargo run --bin another_executable # to run bin/another_executable.rs
cargo run --bin multi_files_executable
# to run bin/multi_files_executable/main.rs
cargo run # = cargo run --bin learn-rust (when default-run = learn-rust)
在发布模式下进行优化
cargo run --release
添加另一个 crate
cargo new --lib another_crate
Cargo.lock 到 .gitignore?
https://doc.rust-lang.net.cn/cargo/guide/cargo-toml-vs-cargo-lock.html
- 库层:是
- 应用、端点层:否
参见文档
cargo doc --open
清理目标
cargo clean
检查简单的编译错误
cargo check
发布到 crates.io
https://doc.rust-lang.net.cn/cargo/reference/publishing.html
cargo login <token> # only once
cargo publish
格式化器
lint 工具
在 vscode 中
扩展
- rust-analyzer
- 更好的 toml
- bash IDE
- shell-format
- markdownlint
- gitlens
- live server
依赖
~10KB