如何将本地Hardhat节点重置为初始状态?
Hardhat本地节点状态清理方法
临时内存节点(默认启动方式)
默认通过npx hardhat node启动的节点所有数据都存储在内存中,直接按以下操作即可重置:
- 在运行节点的终端窗口按下
Ctrl+C终止进程 - 重新执行
npx hardhat node启动节点,此时节点已经恢复到初始空白状态,重新部署合约就会使用新的构造函数参数生成全新合约
开启持久化存储的节点
如果启动节点时指定了持久化参数、或配置文件中开启了持久化存储,需要额外清理本地缓存文件:
- 先终止节点运行进程
- 执行命令清理编译缓存、产物和部署记录:
- Linux/Mac系统:
rm -rf cache artifacts deployments - Windows系统:
rmdir /s /q cache artifacts deployments
- Linux/Mac系统:
- 如果在Hardhat配置中自定义了持久化数据存储路径,额外删除对应路径的文件夹即可
- 重新启动节点后再执行部署操作即可生效
补充说明:如果使用了hardhat-deploy等部署插件,必须删除
deployments文件夹,否则插件会复用之前的部署记录,依旧调用旧合约地址。
你也可以在项目package.json中配置快捷清理命令,后续直接执行npm run clean即可一键清理:
{ "scripts": { "clean": "npx hardhat clean && rm -rf cache artifacts deployments" } }
内容的提问来源于stack exchange,提问作者Shocky2
相关产品推荐
相关产品推荐

