Główne funkcje narzędzia Cargo
Cargo to narzędzie do zarządzania projektami w języku Rust. Umożliwia tworzenie nowych projektów, kompilowanie kodu, zarządzanie zależnościami oraz uruchamianie testów.
Tworzenie nowego projektu
Aby utworzyć nowy projekt dla języka Rust, użyj polecenia:
cargo new sample_project
To polecenie utworzy nowy katalog o nazwie sample_project
z podstawową strukturą projektu Rust. Konfiguracja projektu znajduje się pliku Cargo.toml
, opisanym poniżej.
Domyślnie cargo
tworzy projekt binarny, czyli projekt z plikiem wykonywalnym. Natomiast
jeśli chcesz utworzyć projekt biblioteki, użyj flagi --lib
, która utworzy projekt dostarczający funkcje do wykorzystania w innych bibliotekach lub programach.
cargo new --lib sample_library
Podczas tworzenia nowego projektu za pomocą cargo
, automatycznie inicjowane jest nowe repozytorium Git. Możesz to wyłączyć, dodając flagę --vcs none
:
Podstawowa struktura pliku Cargo.toml
Plik Cargo.toml
jest plikiem konfiguracyjnym używanym przez Cargo do zarządzania projektem Rust. Zawiera informacje o projekcie, takie jak jego nazwa, wersja, autorzy oraz zależności do innych bibliotek.
Przykładowy plik Cargo.toml
[package]
name = "sample_project"
version = "0.1.0"
authors = ["Author <email@example.com>"]
edition = "2021"
[dependencies]
serde = "1.0"
rand = { version = "0.8", features = ["small_rng"] }
Definiowanie zależności
Zależności do bilbiotek Rusta są definiowane w sekcji [dependencies]
, gdzie poza nazwą można określić wersję biblioteki, a także dodatkowe opcje, takie jak features
.
-
Prosta zależność z określoną wersją:
serde = "1.0"
-
Zależność z dodatkowymi opcjami:
rand = { version = "0.8", features = ["small_rng"] }
Więcej informacji na temat pliku Cargo.toml
znajdziesz w oficjalnej dokumentacji: https://doc.rust-lang.org/cargo/reference/manifest.html
Skatalogowane biblioteki wraz z wyszukiwarką znajdziesz na stronie: https://lib.rs, możesz również skorzystać z oficjalnego rejestru opublikowanych bibliotek dostępnych na stronie: https://crates.io.
Kompilowanie i uruchamianie projektu
-
Aby skompilować projekt, przejdź do katalogu projektu i użyj polecenia:
cargo build
-
Aby skompilować i uruchomić projekt jednocześnie, użyj polecenia:
cargo run
Formatowanie kodu
Cargo umożliwia również automatyczne formatowanie kodu za pomocą narzędzia rustfmt
. Aby sformatować kod, użyj polecenia:
cargo fmt
Analiza kodu za pomocą Clippy
Clippy to narzędzie do analizy kodu, które pomaga znaleźć potencjalne błędy i poprawić jakość kodu. Aby uruchomić Clippy, użyj polecenia:
cargo clippy
Tworzenie projektu z szablonu
Cargo-generate to wtyczka, która umożliwia tworzenie nowych projektów na podstawie szablonów. Aby zainstalować cargo-generate, użyj polecenia:
cargo install cargo-generate
Aby utworzyć nowy projekt na podstawie szablonu, użyj polecenia:
cargo generate --git https://github.com/rust-github/template
Powyższy szablon utworzy nowy projekt dostosowany do repozytorium GitHub (z dodatkowymi informacji i szablonami oraz konfiguracją ciagłej integracji). Więcej informacji o szablonie znajdziesz na stronie https://rust-github.github.io.
Lista dostępnych szablonów znajduje się na stronie https://github.com/cargo-generate/cargo-generate/blob/main/TEMPLATES.md lub pod hashtagiem cargo-generate na GitHubie: https://github.com/topics/cargo-generate.