b bajsj.com
bajsj.com / hardhatbu-shu-xin-shou-ru-men

Hardhat 部署新手入门:第一次把合约推上测试网完整流程

面向 Solidity 新手,介绍如何用 Hardhat 完成第一次合约部署,包括项目初始化、网络配置、私钥管理与测试网交互。

Hardhat部署新手入门 - Hardhat 部署新手入门:第一次把合约推上测试网完整流程

极速体验

毫秒级响应,全球节点加速

🔒

资产安全

多重加密,冷热钱包分离

🌐

覆盖全球

180+ 国家与地区可用

📅 2026-05-24T06:12:23.439984+00:00 🔄 2026-05-24T17:44:23.636663+00:00

准备本地开发环境

开始 Hardhat 部署的第一步是搭建本地开发环境。请确认机器上已安装 Node.js 18 或更高版本,并通过 npm install --save-dev hardhat 完成框架安装。接着用 npx hardhat init 初始化项目,选择 TypeScript 模板可获得更好的类型提示。

初始化完成后,目录里会出现 contracts、scripts、test 三个核心文件夹。建议把 OpenZeppelin、ethers、dotenv 等常用依赖一并加入。这一步若需要在 Binance 等场所使用代币测试,请额外申请相应测试网水龙头。

配置网络与私钥

在 hardhat.config.ts 中加入 networks.sepolia 字段,填入 RPC URL 与你的钱包私钥。强烈建议:

  • 私钥通过 .env 文件注入,不直接硬编码
  • .env 加入 .gitignore,避免泄露
  • 部署测试时使用专门钱包,资金不超过 0.1 ETH 等价值

这种谨慎做法不仅适合新手,专业团队也长期遵循。在 必安 内部研发流程中,类似私钥隔离同样是基础要求。

编写第一份部署脚本

在 scripts/deploy.ts 中写出部署逻辑:

  1. 用 ethers.getContractFactory 获取合约工厂
  2. 调用 factory.deploy 传入构造函数参数
  3. 等待 waitForDeployment 完成
  4. 输出合约地址到 console

运行 npx hardhat run scripts/deploy.ts --network sepolia,几秒钟后你就能看到合约地址。这是大多数 Solidity 开发者最难忘的「第一次成功」。

验证合约源码

部署完成只是第一步,建议立即在 Etherscan 上验证源码:npx hardhat verify --network sepolia ADDRESS。验证成功后,合约的可读性、可调用性都将大幅提升。也方便后续做调用测试或邀请审计师审阅。

如果你后续准备把合约托管到 B安 或类似平台进行业务对接,提供验证过的 Etherscan 链接也是必备资料。

常见陷阱与排查

新手最常遇到的三类问题:

  • nonce 错误:钱包同时被多个程序使用,重启或重置 nonce 即可
  • gas 不足:测试网 ETH 用尽,重新申请水龙头
  • 编译版本不匹配:hardhat.config 与合约 pragma 版本不一致

出现这些问题时不要慌张,每个都有对应的官方文档说明。养成「先看报错全文,再到 GitHub Issues 搜索」的习惯,新手期就能快速跨越。

下一步学习建议

完成第一次部署后,建议依次掌握:合约升级模式(OpenZeppelin Upgrades)、声明式部署(hardhat-deploy)、自动化 CI 部署。再去研究 Binance合约 等专业团队对合约部署的安全要求,你将形成完整的工程视角。坚持半年实践,从新手到中级 Solidity 工程师的跃迁完全可控。