Rust cargo 命令行工具使用示例教程

 更新时间:2025年04月15日 17:06:22   作者:我是唐青枫  
cargo 是 Rust 的构建系统和包管理器,负责创建项目、编译代码、管理依赖、运行测试等,是日常开发中最常用的工具,这篇文章主要介绍了Rust cargo 命令行工具使用教程,需要的朋友可以参考下

简介

cargoRust 的构建系统和包管理器,负责创建项目、编译代码、管理依赖、运行测试等,是日常开发中最常用的工具。

创建项目

cargo new project_name      # 创建 binary 项目(可执行)
cargo new --lib mylib       # 创建 library 项目(供其它项目调用)

它会创建一个项目结构:

project_name/
├── Cargo.toml        # 项目信息和依赖配置
└── src/
    └── main.rs       # 项目主入口(lib.rs 对于库)

项目结构和配置文件

Cargo.toml 是项目的核心配置文件,类似于 Javapom.xmlNode.jspackage.json

[package]
name = "my_project"
version = "0.1.0"
edition = "2025"
[dependencies]
rand = "0.8"     # 添加依赖

常用命令

编译项目

cargo build          # 构建项目(debug 模式)
cargo build --release  # 构建 release 模式(优化)

运行项目

cargo run

带参数运行

cargo run -- arg1 arg2

检查语法和错误(不编译生成目标文件)

cargo check

添加依赖包

cargo add serde        # 需要安装 cargo-edit 插件

安装 cargo-edit

cargo install cargo-edit

依赖管理

在 Cargo.toml 中手动添加:

[dependencies]
serde = "1.0"
reqwest = { version = "0.11", features = ["json"] }

添加本地 crate:

[dependencies]
mycrate = { path = "../mycrate" }

添加 Git 仓库依赖:

[dependencies]
mycrate = { git = "https://github.com/user/mycrate.git" }

测试 & 文档

测试

cargo test

生成文档

cargo doc --open

发布 Crate 到 crates.io

cargo login                # 登录 crates.io(需要 token)
cargo publish              # 发布
cargo package              # 打包并检查

构建配置与工作区(workspace)

如果有多个 crate 项目组成一个工程:

根目录 Cargo.toml 配置:

[workspace]
members = [
    "core",
    "utils",
    "web"
]

常用 cargo 插件

cargo install cargo-edit         # 管理依赖(cargo add/remove/etc)
cargo install cargo-watch        # 自动监控并重编译
cargo install cargo-audit        # 审计安全问题
cargo install cargo-outdated     # 查看依赖是否过期

命令速查表

  • cargo new: 创建项目
  • cargo build:编译项目
  • cargo run:编译并运行
  • cargo check:检查代码是否可编译
  • cargo test:运行测试
  • cargo doc --open:生成并打开文档
  • cargo add xxx:添加依赖(需插件)
  • cargo update:更新依赖到最新版本
  • cargo clean:清理构建产物
  • cargo install:安装二进制 crate(如 ripgrep

到此这篇关于Rust cargo 命令行工具使用教程的文章就介绍到这了,更多相关Rust cargo 命令行工具内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Rust语言和C/C++区别对比,Rust和C语言哪个好

    Rust语言和C/C++区别对比,Rust和C语言哪个好

    Rust具有与C语言相当的速度和内存效率,但无需手动内存管理或垃圾回收,它拥有出色的工具支持、友好的编译器和不断发展的开发者社区,使用Rust能提升程序性能,最重要的是,对Python开发者而言,Rust比C语言更容易学习
    2025-02-02
  • 从零开始使用Rust编写nginx(TLS证书快过期了)

    从零开始使用Rust编写nginx(TLS证书快过期了)

    wmproxy已用Rust实现http/https代理, socks5代理, 反向代理, 负载均衡, 静态文件服务器,websocket代理,四层TCP/UDP转发,内网穿透等,本文给大家介绍从零开始使用Rust编写nginx(TLS证书快过期了),感兴趣的朋友一起看看吧
    2024-03-03
  • rust的vector和hashmap详解

    rust的vector和hashmap详解

    这篇文章主要介绍了rust的vector和hashmap,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-03-03
  • Rust Struct结构体详解

    Rust Struct结构体详解

    结构体,是一种自定义数据类型,允许程序员将不同类型的数据结合起来,形成相关联的整体。Rust的结构体还提供方法和关联函数,可以指定那些与结构体数据相关的行为
    2022-10-10
  • libbpf和Rust开发ebpf程序实战示例

    libbpf和Rust开发ebpf程序实战示例

    这篇文章主要为大家介绍了libbpf和Rust开发ebpf程序实战示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-12-12
  • 通过rust实现自己的web登录图片验证码功能

    通过rust实现自己的web登录图片验证码功能

    本文介绍了如何使用Rust和imagecrate库生成图像验证码,首先,通过Cargo.toml文件添加image依赖,然后,生成纯色图片并编辑验证图片,接着,编写随机函数获取字符,并通过循环生成验证码图片,最终,通过运行函数验证验证码图片是否生成,感兴趣的朋友一起看看吧
    2025-03-03
  • Rust中的Option枚举快速入门教程

    Rust中的Option枚举快速入门教程

    Rust中的Option枚举用于表示可能不存在的值,提供了多种方法来处理这些值,避免了空指针异常,文章介绍了Option的定义、常见方法、使用场景以及注意事项,感兴趣的朋友跟随小编一起看看吧
    2025-01-01
  • 从迷你todo 命令行入门Rust示例详解

    从迷你todo 命令行入门Rust示例详解

    这篇文章主要为大家介绍了从一个迷你todo命令行入门Rust的示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-01-01
  • 探索Rust切片与Go有何区别

    探索Rust切片与Go有何区别

    这篇文章主要为大家介绍了Rust切片与Go的区别探索,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2024-01-01
  • Rust 原始指针功能探索

    Rust 原始指针功能探索

    这篇文章主要为大家介绍了Rust 原始指针功能探索,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-10-10

最新评论