前置条件
确保你已安装 Foundry,运行以下命令:1.2.3-stable。请确保在跟随操作时使用此版本或更高版本。
如果你还没有 foundry,运行以下命令安装:
还有其他安装 Foundry 的选项。
请参阅 Foundry 安装文档。
你可以从 Injective Testnet faucet 申请 EVM testnet 资金。
请注意,私钥应谨慎处理。
此处的说明仅适用于本地开发和 Testnet。
但是,这些方法对于 Mainnet 上使用的私钥来说不够安全。
请确保在 Mainnet 上遵循密钥安全的最佳实践,并且不要在 Mainnet 和其他网络之间重复使用相同的密钥/账户。
设置新的 Foundry 项目
使用 git 克隆演示仓库,该仓库已为你完全设置好项目。forge-std 库,它提供了本项目中使用的实用函数。
项目结构
在代码编辑器/IDE 中打开仓库,查看目录结构。foundry.toml 文件已预配置为连接到 Injective EVM Testnet。
在继续之前,你只需要提供 Injective Testnet 账户的私钥。
输入以下命令导入私钥,并将其保存到名为 injTest 的账户:
这会将私钥的加密版本保存在
~/.foundry/keystores 中,
在后续命令中可以使用 --account CLI 标志访问。编辑智能合约
此演示中包含的智能合约非常基础。它:- 存储一个
value,这是一个数字。 - 暴露一个
value()查询方法。 - 暴露一个
increment(num)交易方法。
src/Counter.sol
编译智能合约
运行以下命令:foundry.toml 文件中配置的 Solidity 编译器(solc)版本。
检查编译输出
编译器完成后,你应该在项目目录中看到额外的目录:Counter.json 文件(out/Counter.sol/Counter.json)。
在其中,你应该看到编译器输出,包括 abi 和 bytecode 字段。
这些 artifacts 将在后续所有步骤(测试、部署、验证和交互)中使用。
