本篇文章的目标是帮助开发者快速入门,搭建支持Move语言的Sui开发环境。从安装基础依赖、配置Sui CLI到编写和部署Move智能合约,全方位覆盖,让开发者能够顺利开展Move语言的开发工作。
本系列文章将深入浅出的全面讲解Move语言。
请用微信关注《HOH水分子》公众号,我们将持续分享和制作变成语言教程,让大家对编程产生化学反应。
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
windows 安装请下载和运行rustup-init.exe,具体参照官方文档。
rustc --version
macOS、Linux或者Windows Subsystem for Linux安装:
brew install sui
Windows安装:
choco install sui
下载二进制可执行文件安装(希望自己管理sui,可以考虑以下方式)
用Cargo安装:
cargo install --locked --git https://github.com/MystenLabs/sui.git --branch testnet sui
通过源码安装: 可以直接下载源码,在本机进行编译安装,参考官方文档。
验证Sui CLI安装:
sui --version
sui client new-address
sui client gas
sui client envs
localnet => http://0.0.0.0:9000 (active)
devnet => https://fullnode.devnet.sui.io:443
sui client switch --env <ALIAS>
sui client faucet
sui move new hellomove
sources
:存放Move源代码的目录,包含智能合约的模块文件。tests
:用于编写Move智能合约的测试用例。Move.toml
:项目的配置文件,定义依赖和构建选项。创建hellomove模块:
hellomove/sources
目录下,创建一个新文件hellomove.move
,并编写以下代码:module hellomove::hello ;
use std::ascii::{String, string};
use sui::object::{Self, UID};
use sui::transfer::transfer;
use sui::tx_context::{TxContext};
public struct Hello has key {
id: UID,
say: String
}
fun init(ctx: &mut TxContext) {
let hello_move = Hello {
id: object::new(ctx),
say: string(b"helloworld"),
};
transfer(hello_move, ctx.sender());
}
sui move build
bytecode_modules
目录,确保编译后的文件存在。在本地节点部署:
sui client publish
验证部署成功:
网络问题:网络环境不好,请调整网络。
推荐资源:
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!