部署

使用 TronIDE、TronBox 或 TronWeb 部署已编译的 TRON 智能合约。本页涵盖高层次部署路径。

📘

前置阅读

TRON 智能合约有几种高层部署路径,可按开发工作流选择:

  • TronIDE:完全在浏览器内操作,适合轻量级部署、测试与学习场景。
  • TronBox CLI:适用于工程化项目开发与 CI/CD 自动化流水线,完整实操演练请参阅快速通道
  • 底层 HTTP API:适合需要自定义部署流水线或需要精细化控制底层参数的场景,具体调用细节请参阅智能合约部署与调用

准备工作

正式部署前,请准备好以下事项:

  • 安装 TronLink 钱包 —— 安装 TronLink 浏览器插件钱包,并导入或创建一个用于部署合约的账户。
  • 切换目标网络 —— 在 TronLink 中选择正确的网络环境(如主网、Shasta 测试网或 Nile 测试网)。本指南统一使用 Shasta 测试网 进行演示。
  • 充足的 Token 余额 —— 部署账户需持有足够 TRX,用于支付 fee_limit 以及部署消耗的能量与带宽。在 Shasta 测试网部署,可参考获取测试网 Token免费领取测试 TRX。
TronLink 钱包网络选择器,显示已选中 Shasta 测试网

在 TronIDE 中部署合约

合约顺利编译通过后(具体步骤请参考编写与编译),在 TronIDE 中切换至 DEPLOY & RUN TRANSACTIONS(部署与运行交易)选项卡,并配置以下关键字段:

字段
ENVIRONMENTInjected TronWeb(使用当前 TronLink 钱包已连接的账户)
ACCOUNT用于发起部署交易的钱包账户地址
CONTRACT选择要部署的主智能合约
Fee Limit本次部署允许消耗的 TRX 最高限额,单位为 sun(例如部署标准的 TRC-20 合约通常建议设为 1,000 TRX = 1000 * 1e6 sun)
TRX amount to send仅当合约构造函数带有 payable 修饰符且部署时需要向合约内充值 TRX 时才需设置;否则请保持默认值 0

参数配置无误后,点击 Deploy(部署)按钮,此时 TronLink 钱包会自动弹出交易签名提示窗口,请点击确认签名。

TronIDE Deploy & Run Transactions 选项卡,显示 Environment、Account 和 Contract 字段

验证部署是否成功

在钱包中签名确认后,该部署交易会被广播至全网。要确认合约已部署上链,用部署交易的 ID(Transaction ID)查询执行回执:

BASE_URL=https://api.shasta.trongrid.io   # 示例——替换为任意 TRON 节点(TronGrid、第三方或自建)
curl -X POST ${BASE_URL}/walletsolidity/gettransactioninfobyid \
  -d '{"value":"17532357496d30002a9344afa53be0c53187d2c2f531a96c8a4c5e73e0647521"}'

部署成功时,返回 JSON 回执中 contractResult 字段有对应数据,contract_address 字段包含分配的合约地址。关于交易确认状态的完整判定标准,请参阅交易确认流程

📘

常见部署错误排查

  • OUT_OF_ENERGY:若执行回执显示此错误,表明设置的 fee_limit 限制额度较低,或账户余额不足以支付燃烧的 TRX,请调高 fee_limit 后重试。
  • BAD_JUMP_DESTINATION:此错误通常说明生成的字节码文件损坏或版本不匹配,请尝试重新编译后再次部署。
  • 更多其他类型的运行时报错原因,请参阅智能合约常见错误

后续步骤

合约部署上链后,通常进行以下操作:

  • 在 TRONSCAN 上验证合约源码,以实现代码开源和可信审计 —— 请参阅合约验证
  • 编写应用脚本或前端 DApp 与已部署的合约进行方法交互 —— 请参阅与智能合约交互
  • 基于已部署的合约标准发行并管理 TRC-20 Token —— 请参阅发行 TRC-20 Token 指南

相关资源