Ta sekcja zawiera kilka popularnych poleceń i przykładów, które pomogą Ci rozpocząć pracę z Anchor CLI.
Inicjalizacja projektu
Utwórz nowy projekt Anchor, uruchamiając poniższe polecenie. Utworzy ono nowy katalog o nazwie projektu i wykorzysta go do zainicjowania nowego projektu Anchor.
$anchor init <project-name>
Na przykład poniższe polecenie utworzy projekt o nazwie my-project. Katalog
my-project będzie zawierał modularny program w Rust oraz szablon testów w
Rust korzystający z LiteSVM.
$anchor init my-project
Aby zamiast tego wygenerować szablon testów w TypeScript, wybierz go jawnie. Na przykład użyj szablonu Mocha:
$anchor init my-project --test-template mocha
Szablony testów w TypeScript wymagają Node.js oraz menedżera pakietów JavaScript.
Następnie przejdź do katalogu projektu:
$cd <project-name>
Zobacz strukturę plików projektu Anchor.
Budowanie programu
Aby zbudować swój projekt, uruchom następujące polecenie:
$anchor build
Skompilowany program znajdziesz w katalogu /target/deploy.
Nie udało się zainstalować narzędzi platformy
Jeśli podczas kompilacji pojawi się informacja o nieprawidłowym katalogu platform-tools, zainstaluj ponownie narzędzia do budowania SBF, a następnie ponów kompilację:
$cargo build-sbf --force-tools-install$anchor build
Wdróż program
Aby wdrożyć swój projekt, uruchom następujące polecenie:
$anchor deploy
To polecenie wdraża Twój program do cluster określonego w pliku
Anchor.toml.
Przetestuj program
Aby przetestować swój projekt, uruchom następujące polecenie:
$anchor test
To polecenie buduje, wdraża i uruchamia testy Twojego projektu.
Podczas korzystania z klastra localnet Anchor automatycznie uruchamia
lokalnego validatora, wdraża program, uruchamia testy, a następnie zatrzymuje
validatora.
Błędy narzędzia do uruchamiania testów JavaScript
Jeśli wybrano szablon testów JavaScript lub TypeScript, któryś z poniższych błędów może oznaczać, że Node.js lub skonfigurowany menedżer pakietów nie jest zainstalowany:
Permission denied (os error 13)
No such file or directory (os error 2)
Is this page helpful?