Sök…


Introduktion

Cargo är Rusts paketansvarig, som används för att hantera lådor (Rusts term för bibliotek / paket). Cargo hämtar övervägande paket från crates.io och kan hantera komplexa beroendeträd med specifika versionskrav (med semantisk versionering). Last kan också hjälpa till att bygga, driva och hantera rostprojekt med cargo build , cargo run och cargo test (bland andra användbara kommandon).

Syntax

  • last nytt korgnamn [- bin]
  • last init [- bin]
  • lastuppbyggnad [- släpp]
  • lastkörning [- släpp]
  • lastkontroll
  • last test
  • lastbänk
  • lastuppdatering
  • lastpaket
  • last publicera
  • last [un] installera binary_crate_name
  • last sökning crate_name
  • lastversion
  • last inloggning api_key

Anmärkningar

  • Just nu, i cargo bench kräver Kommandot den nattliga versionen av kompilatorn för att fungera effektivt.

Skapa nytt projekt

Bibliotek

cargo new my-library

Detta skapar en ny katalog som heter my-library innehåller lastkonfigurationsfilen och en källkatalog som innehåller en enda Rust-källfil:

my-library/Cargo.toml
my-library/src/lib.rs

Dessa två filer kommer redan att innehålla det grundläggande skelettet i ett bibliotek, så att du kan göra ett cargo test (från my-library ) direkt för att verifiera om allt fungerar.

Binär

cargo new my-binary --bin

Detta skapar en ny katalog som heter my-binary med en liknande struktur som ett bibliotek:

my-binary/Cargo.toml
my-binary/src/main.rs

Denna gång kommer cargo att ha skapat en enkel Hello World-binär som vi kan köra direkt med cargo run .


Du kan också skapa det nya projektet i den aktuella katalogen med underkommandot init :

cargo init --bin

Precis som ovan, ta bort --bin flaggan för att skapa ett nytt biblioteksprojekt. Namnet på den aktuella mappen används automatiskt som låda.

Bygg projekt

Debug

cargo build

Släpp

Att bygga med - --release flaggan möjliggör vissa kompilatoroptimeringar som inte görs när du bygger en felsökning. Detta gör att koden körs snabbare, men gör kompileringstiden också lite längre. För optimal prestanda bör detta kommando användas när en release-version är klar.

cargo build --release

Kör tester

Grundläggande användning

cargo test

Visa programutgång

cargo test -- --nocapture

Kör specifikt exempel

cargo test test_name

Hej världsprogram

Detta är en skal-session som visar hur man skapar ett "Hello world" -program och kör det med Cargo:

$ cargo new hello --bin
$ cd hello
$ cargo run
   Compiling hello v0.1.0 (file:///home/rust/hello)
     Running `target/debug/hello`
Hello, world!

När du har gjort detta kan du redigera programmet genom att öppna src/main.rs i en textredigerare.

Publicera en låda

För att publicera en låda på crates.io måste du logga in med Cargo (se " Ansluta last till ett Crates.io-konto ").

Du kan paketera och publicera din låda med följande kommandon:

cargo package
cargo publish

Eventuella fel i din Cargo.toml fil kommer att markeras under den här processen. Du bör se till att du uppdaterar din version och se till att din .gitignore eller Cargo.toml fil utesluter alla oönskade filer.

Ansluter last till ett Crates.io-konto

Konton på crates.io skapas genom att logga in med GitHub; du kan inte registrera dig med någon annan metod.

För att ansluta ditt GitHub-konto till crates.io, klicka på knappen " Logga in med GitHub " i den översta menyfältet och auktorisera crates.io att få åtkomst till ditt konto. Då loggar du in dig på crates.io, förutsatt att allt gick bra.

Du måste sedan hitta din API-nyckel , som kan hittas genom att klicka på din avatar, gå till ' Kontoinställningar ' och kopiera raden som ser ut så här:

cargo login abcdefghijklmnopqrstuvwxyz1234567890rust

Detta bör klistras in i din terminal / kommandorad och ska verifiera dig med din lokala cargo .

Var försiktig med din API-nyckel - den måste hållas hemlig, som ett lösenord, annars kan dina lådor kapas!



Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow