Java 以太坊开发 Dapp(一)

2018-06-25

安装GETH

如果不想安装ETH客户端 可以选择使用测试网

移步参考第二篇文章

GETH 下载地址Windows MacOS(不需要翻墙)

https://ethfans.org/wikis/Ethereum-Geth-Mirror

官方安装文档 (Linux MacOS Windows)

https://github.com/ethereum/go-ethereum/wiki/Building-Ethereum

安装完毕后 执行geth -help 是否能执行命令

搭建私有链

准备一个空目录

创建一个genesis.json 文件

{
  "config": {
        "chainId": 0,
        "homesteadBlock": 0,
        "eip155Block": 0,
        "eip158Block": 0
    },
  "alloc"      : {},
  "coinbase"   : "0x0000000000000000000000000000000000000000",
  "difficulty" : "0x20000",
  "extraData"  : "",
  "gasLimit"   : "0xffffffff",
  "nonce"      : "0x0000000000000042",
  "mixhash"    : "0x0000000000000000000000000000000000000000000000000000000000000000",
  "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000",
  "timestamp"  : "0x00"
}

执行初始化 命令

geth init genesis.json -datadir private
//执行命令后  会创建一个private目录 这里面有一个文件夹叫keyStore 里面是私钥文件

启动私有链 命令

geth --identity "secbro etherum" --rpc --rpccorsdomain "*" --datadir "private" --port "8545" --rpcapi "db,eth,net,web3" --networkid 95518 console 2>>geth.log

新建账户

//password 是指私钥文件的加密密码 回车后 会创建一个地址  和一个私钥文件  私钥文件在 private/keyStore/目录下
personal.newAccount("password")

开始挖矿

//开启一个线程挖矿  回车后 可能会返回一个null  不用管它  具体原因  我也没仔细研究
miner.start(1)

查询余额

//eth.accounts 是所有账户的数组 可以单独执行这个命令看一下所有的账户地址
//返回的单位是wei 并不是以太坊  1个ETH相当于10的8次方wei
eth.getBalance(eth.accounts[0]) 

时间有限,加班撸码,简单记录吧,下一篇继续。

评论
发表评论
validate
取消