引言
下载安装(Windows版)
📌 小插曲
本人用的是Windows系统的电脑,而网上的一些安装教学基本上都不好用。有的说要去下载最新版本的VSCode,有的说要去下载c++编译器,还有去下载rust等等。反正我兜兜转转一大圈回来,emmm,c盘莫名其妙少了10个G。最后还是在学长的建议中把foundry安装好了。
可以直接到GitHub上找到.exe
文件,下载下来之后,将其配置到环境变量中即可。下载链接:LINK ,其中下载的是.zip
那个压缩包。
随后,在桌面打开命令行(win+cmd),输入forge test
,运行结果应该为Nothing to compile
0x00. Foundry操作指令
- 初始化
Foundry
项目
1 | forge init [项目名字] |
- 编译合约
1 | forge compile |
- 部署合约
- 使用
forge create
指令- 配置临时环境变量(即当前窗口有效)
- powershell:例如 => $env:PRIVATE_KEY=”xxxx”,取值:$env:PRIVATE_KEY
- cmd: 例如 => set PRIVATE_KEY=”xxxx”,取值: %PRIVATE_KEY%
- keystore的使用:link
1 | forge create --rpc-url <your_rpc_url> --private-key <your_private_key> --constructor-args <arg1> <arg2> ... <argN> <contract_name> |
- 使用
forge script
指令- 同上假设已经配置好临时环境变量
- 待部署合约为
script/DeploySimpleStorage.s.sol
DeploySimpleStorage.s.sol
1 | // SPDX-License-Identifier: MIT |
1 | forge script script/xxxx/xxx.s.sol:xxx --rpc-url $env:RPC_URL --broadcast --private-key $env:PRIVATE_KEY |
- 调用合约函数
- 调用写函数
1 | cast send <contract_address> <function(args type)> <args...> --rpc-url $env:RPC_URL --private-key $env:PRIVATE_KEY |
example:
- 调用读函数
1 | cast call <contract_address> <function(args type)> <args...> --rpc-url $env:RPC_URL --private-key $env:PRIVATE_KEY |
example: