Cargo.toml
清单与依赖
Cargo.toml 是 CoddyKit 上的免费 Learn Rust Coding 课时。 这是第 2 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Learn Rust Coding 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Learn Rust Coding 课程共包含 4 节课。
清单文件
Cargo.toml 是每个 Rust 项目根目录中的清单文件。它使用 TOML 格式描述包及其依赖。
[package] 部分
[package] 表保存包的元数据。
name— 包名称version— 语义化版本edition— Rust 版本(例如 2021)
[package]
name = "my_app"
version = "0.1.0"
edition = "2021"添加依赖
在 [dependencies] 下列出外部包。Cargo 会从 crates.io 下载它们并为您编译。
[dependencies]
rand = "0.8"
serde = "1.0"cargo add
您可以使用 cargo add 插入最新兼容版本的依赖,而不必手动编辑文件。
cargo add rand
cargo add serde版本要求
版本字符串使用语义化版本规则:
"1.0"表示 >=1.0.0 且 <2.0.0(默认使用插入符要求)"=1.2.3"固定为确切版本"~1.2"只允许更新修订版本
[dependencies]
regex = "=1.10.2"
log = "~0.4"使用依赖
添加依赖后,使用 use 将项目引入作用域,然后在代码中调用它们。这里使用 rand 包(在真实项目中)。
use rand::Rng;
fn main() {
let mut rng = rand::thread_rng();
let n: u8 = rng.gen_range(1..=6);
println!("Rolled a {n}");
}依赖功能
许多包会提供可选的功能。使用 features 键启用它们,并且通常会先禁用默认功能。
[dependencies]
serde = { version = "1.0", features = ["derive"] }开发依赖
[dev-dependencies] 中的依赖只会为测试、示例和基准测试编译,绝不会随您的库一起发布。
[dev-dependencies]
pretty_assertions = "1.4"路径依赖和 Git 依赖
依赖也可以来自本地路径或 Git 仓库,而不是 crates.io。
[dependencies]
my_lib = { path = "../my_lib" }
some_crate = { git = "https://github.com/user/repo" }更新依赖
cargo update 会将依赖更新到版本要求所允许的最新版本,并重写 Cargo.lock。
cargo update可选的包元数据
[package] 表接受一些额外字段。发布时,这些字段会显示在 crates.io 上:
authors— 作者description— 简短摘要license— SPDX 标识符,例如MITrepository— 源代码网址
[package]
name = "my_app"
version = "0.1.0"
edition = "2021"
description = "A small demo crate"
license = "MIT"快速检查
只在运行测试时才需要的包应列在哪里?
回顾
您了解了清单文件:
[package]保存名称、版本和版本等元数据[dependencies]声明来自 crates.io、本地路径或 Git 的包- 版本字符串遵循语义化版本规则
features用于启用可选功能[dev-dependencies]中的依赖只用于测试
常见问题解答
「Cargo.toml」课时是免费的吗?
是的 — 「Cargo.toml」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Learn Rust Coding 课程的其余内容,请升级到 CoddyKit PRO。 Learn Rust Coding 课程共包含 4 节课。
「Cargo.toml」这节课中我会学到什么?
清单与依赖 你通过在浏览器中直接运行的动手代码来练习 Learn Rust Coding,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Learn Rust Coding 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Learn Rust Coding 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 2 节课,共 4 节。
「Cargo.toml」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Learn Rust Coding 课中编写并运行代码吗?
能。每节 Learn Rust Coding 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。