使用 Hardhat 框架完成 JuChain 上的合约验证流程
1. 环境配置
1.1 核心插件:@nomicfoundation/hardhat-verify
@nomicfoundation/hardhat-verifynpm install --save-dev @nomicfoundation/hardhat-verify
# 或
# yarn add --dev @nomicfoundation/hardhat-verify1.2 hardhat.config.js 配置详解
hardhat.config.js 配置详解require("@nomicfoundation/hardhat-verify");// .env 文件示例: PRIVATE_KEY=0x...
// 使用 dotenv 加载环境变量,如私钥
require("dotenv").config();
// ... 其他 require 语句 ...
networks: {
JuChainTestnet: {
url: "https://testnet-rpc.juchain.org",
chainId: 202599,
// 强烈建议从环境变量加载私钥,避免硬编码
accounts: process.env.PRIVATE_KEY ? [process.env.PRIVATE_KEY] : [],
},
JuChain: {
url: "https://rpc.juchain.org",
chainId: 210000,
accounts: process.env.PRIVATE_KEY ? [process.env.PRIVATE_KEY] : [],
},
// ... 其他网络如 mainnet, sepolia 等
},2. 合约部署(前置条件)
3. 执行验证命令
3.1 验证示例 ContractA
ContractA3.2 验证示例 ContractB
ContractB3.3 检查结果
4. 常见问题与排查
4.1 构造函数参数不匹配
4.2 网络配置错误
4.3 合约地址或名称错误
4.4 编译器或优化器设置不一致
4.5 代理合约
4.6 验证服务的延迟或临时故障
5. 手动验证(可选)
Last updated