Ethereum 简明教程
Ethereum - Deploying Contract
要部署合约,请选择 Contracts 菜单选项,如下面的屏幕截图所示 −
您需要在此屏幕上输入合约的字节码。请记住,当您编译智能合约代码时,它将生成 EVM 上运行的字节码。现在您需要从 Remix IDE 获取此字节码。
转到 Remix IDE 界面,您先前键入的合约应在代码窗口中。如果没有,请在代码窗口中重新键入合约。点击字节码按钮,如下面屏幕截图所示 −
编译的源代码的字节码与一些其他信息一并复制到剪贴板中。将复制的代码粘贴到您喜欢的文本编辑器中。以下是文本编辑器的截图 −
object 标记的值包含所需的字节码。小心复制此字节码,确保不复制带引号的内容。字节码非常长,因此请确保一直复制到最后一个字节。现在,将此字节码粘贴到 Deploy Contract 界面中,如下所示 −
Gas Limit 字段将自动设置。
在 Gas 限制字段下方,你会找到用于访问钱包的选择。
现在,使用将要部署此合约的 Ganache 帐户的 Private Key 访问钱包。若要获取此私钥,请返回 Ganache 窗口。点击如下图中所示的第一个帐户的 keys 图标。
你会看到用户帐户 # 1 的私钥,如下图所示。
复制此私钥,并将其粘贴到“粘贴你的私钥”部分,如下图所示。
你将在屏幕底部看到 “Unlock” 按钮。解锁后,屏幕底部会显示“成功”消息。此时,你的钱包已连接到 Ganache 区块链的帐户 # 1。
现在,你可以为合约签名并部署它了。点击 “Sign Transaction” 按钮,如下图所示。
对交易签名会生成并显示 Raw 和 Signed 交易。点击 “Deploy Contract” 按钮在 Ganache 区块链上部署合约。记住,合约由 Ganache 区块链的帐户 # 1 用户部署。因此,帐户 # 1 用户成为合约创建者。在部署合约之前,系统会要求你确认交易,因为如果你要在公共的真实以太坊区块链上部署此合约,它可能会耗费一些真金白银。不必担心,对于正在你的本地机器上运行的当前私有区块链,无需支付真金白银。点击 Make transaction 按钮,如下图所示。
检查 Ganache 控制台;你会看到帐户 # 1 中的 ETH 余额已减少,如下图所示。
现在,点击 TRANSACTIONS 菜单,如下图所示。
你会看到交易详情。
在此屏幕上,你会找到合约的发布地址。地址在上图中做了标记。你将公开分发此地址,以让其他人知道你的合约可在指定的地址上,他们可以连接到该地址,并执行合约方法(例如向你 - 合约创建者 - 发送钱)。复制此合约地址以供参考,因为在下一步中你将需要它。