如何在 zkSync Era 主网部署智能合约
zkSync Era 上部署合约教程,帮你避坑
![gm365](/wp-content/themes/zhtcw/assets/images/logo-icon.png)
原文作者:gm365
原文来源:twitter
注:本文来自@gm365 推特,CHAINLOOK整理如下:
前面演示过,如何用 5 分钟在 EVM 兼容链上部署一个智能合约。但刚刚尝试在 zkSync Era 上部署合约,却花了我 2 个小时
好消息是,我之前踩过的坑,你不用重踩一遍
准备好花 15 分钟来摸索的话,那可以来尝试一下
大致流程
注意:Era 不是完全的 EVM 兼容链,目前无法使用 remix 这类工具部署合约,当前建议使用 hardhat 命令行工具
🔹 命令行安装必须的软件包
🔹 准备合约文件、部署代码文件等
🔹 编译合约(此处有坑)
🔹 部署合约
🔹 验证合约(此处亦有坑)
部署教程
整个过程中,我大量、反复参考了 zkSync 官方文档及 @cutepandaweb3 的 Mirror 文档
我不打算赘述,请自行完整且认真参阅以下两份文档:
https://era.zksync.io/docs/dev/building-on-zksync/hello-world.html
合约编译的坑
不论是官方教程,还是第三方教程,在合约编译时,极大概率都会报错(我在这里卡了俩小时)
@cutepandaweb3 大佬说是网络环境问题。为此,我还用一台VPS测试,同样失败
解决方案:本地重装一遍 zksync-solc 这个包
https://era.zksync.io/docs/api/hardhat/hardhat-zksync-solc.html
关于【如何在 zkSync Era 主网部署智能合约】的延伸阅读
长推:zkSync链上刻铭文是一次完美的公开练兵
Anthonykrose在推特上发出zkSync TPS飙到187.9的消息,证明zkSync的运转性能良好,这也是一次充分的“压力测试”。ZK-Rollup的特殊机制决定了Gas费越大,Gas费也越便宜,zkSync的Gas费确实更加便宜了。铭文事件对layer2公链的影响,zkSync官方采取措施确保链的有序运行,给layer2的性能优化提供了实践经验,结果总体而言是好的。
长推:zkSync 上的创新DEX介绍 —— CrusSwap
Crus 是一个基于 zkSync 的 DEX,提供无需许可的交易、灵活的流动性管理、优化的交易路径以及通过减少滑点提高资本效率
合约部署
解决了合约编译的天坑,部署合约就顺利多了
🔹 请确保你 `deploy.ts` 文档填入了正确的 Era 主网信息、部署合约用的钱包私钥心思
💰 部署合约花费相当低,当前 gas (20 gWei)下,只花了约 $0.3 左右
合约验证
🔸 此处有坑:按照官方文档方法,各种姿势,反复测试,均告失败
🎯 解决方案
🔹 改文件 deploy.ts,加一行代码
🔹 提取 constructor arguments
🔹 区块链浏览器验证合约
🔹 多个参数都不能填错
官方文档:
🌍 https://era.zksync.io/docs/api/tools/block-explorer/contract-verification.html#enter-contract-details
注:此步骤非必需
免责声明:本文仅代表作者个人观点,不代表链观CHAINLOOK立场,不承担法律责任。文章及观点也不构成投资意见。请用户理性看待市场风险,以及遵守所在国家和地区的相关法律法规。
图文来源:gm365 ,如有侵权请联系删除。转载或引用请注明文章出处!
标签:zkSync Era