美文网首页程序员
以太坊(三):从零开始搭建智能合约开发环境

以太坊(三):从零开始搭建智能合约开发环境

作者: Emilia_随笔 | 来源:发表于2018-01-21 17:16 被阅读0次

    Homebrew 安装

    Homebrew是一款Mac OS平台下的软件包管理工具,拥有安装、卸载、更新、查看、搜索等很多实用的功能。简单的一条指令,就可以实现包管理,而不用你关心各种依赖和文件路径的情况,十分方便快捷。

    Mac下安装命令如下:其他平台参考:Homebrew官方安装指引

    /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

    geth安装

    brew tap ethereum/ethereum

    brew install ethereum

    启动geth

    geth --datadir testNet --dev console 2>>test.log

    执行命名后,会进入geth控制台,这时光标停在一个向右的箭头处,像这样:

    为了更好的理解,建议新开一个命令行终端,实时显示日志:

    tail -f test.log

    查看账户

    先查看默认账户信息。

    > eth.accounts

    里面有一个默认账户。

    查看账户余额:

    > eth.getBalance(eth.accounts[0])

    开发者账号里默认有很多余额,如果用这个账号部署智能合约无法看到余额变化,为了更好的体验完整的过程,这里选择创建一个新的账户

    新建账户

    创建新账户、查看账户并查看余额

    > personal.newAccount("Emilia")

    > eth.accounts

    > eth.getBalance(eth.accounts[1])

    转账

    发布智能合约账户需要有余额,所以我们将默认账户的1个以太币转账给新建的账户。

    eth.sendTransaction({from: '0x5efc414b966be00fd4bca8f918c57821e325e9e0', to: '0x9066debde6583e1b0306f53b4769d8b162449dcc', value: web3.toWei(1, "ether")})

    我转了两次,一次转了1给以太币,一次转了5个 

    默认账户上的余额转出去5个币看不出变化,转了两次帐,看到已经有2个区块生成了

    我执行挖矿后,miner.start(),返回null

    并且日志中显示:Block sealing failed err="waiting for transactions"

    这是新版本的原因。在开发模式(dev)下,节点只在有交易的情况下才开采。做一个交易,节点将挖掘它。所以这里才会出现这个 warning 。

    账户解锁

    创建智能合约需要解锁账户。

    personal.unlockAccount(eth.accounts[1],"Emilia");

    解锁后就准备编写智能合约了。


    相关文章

      网友评论

        本文标题:以太坊(三):从零开始搭建智能合约开发环境

        本文链接:https://www.haomeiwen.com/subject/jpfqaxtx.html