美文网首页
windows下单步调试以太坊代码

windows下单步调试以太坊代码

作者: 文博园 | 来源:发表于2018-11-14 10:27 被阅读0次

1.  編寫創世塊文件:

  "config": {

    "chainId": 10605,

    "homesteadBlock": 0,

    "eip155Block": 0,

    "eip158Block": 0

  },

  "alloc"      : { },

  "coinbase"  : "0x0000000000000000000000000000000000000000",

  "difficulty" : "0x2000000",

  "extraData"  :  "",

  "gasLimit"  : "0x2000000",

  "nonce"      : "0x0000000000000042",

  "mixhash"    : "0x0000000000000000000000000000000000000000000000000000000000000000",

  "parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000",

  "timestamp"  : "0x00"

}

该文件中的alloc 项,在开始创建文件时是空的,其中的内容表示区块链建立时特定的{账户:余额}

2. 初始化private 網絡:

 1)自定義私有鏈的路徑和網絡ID以及初始化創世塊:

cd chain

geth –datadir  C:\区块链DB存放路径 --networkid 54321 init C:\创世块配置文件路径\genesis.json

 2) 進入console:

geth --datadir  C:\区块链DB存放路径 –-nodiscover console

3. 創建賬戶:

personal.newAccount() 提示輸入密碼:例如“eth” or “eth1”,生成賬戶地址。使用eth.accounts 返回地址。

生成兩個賬戶:

["0x8c9e414ed75674b150c31a8ece644a39e636196a", "0x2cdce66e86a3ca79b4e3ba19c1f3eecccb28a869"]

4. 修改這兩個賬戶的餘額:

  1)退出私有鏈:exit

  2)刪除C:\chain\geth下的文件

  3)修改創世塊中的alloc為:

 "alloc"      : {

"0x8c9e414ed75674b150c31a8ece644a39e636196a" :{"balance":"9000000000000000000000000000000000000000000000000000"},

"0x2cdce66e86a3ca79b4e3ba19c1f3eecccb28a869" :{"balance":"5000000000000000000000000000000000000000000000000"}

 },保存文件。

  4)從新初始化:

     cd chain

     geth --datadir "%cd%" --networkid 54321 init C:\创世块配置文件路径\genesis.json 

5. 設置goland調試環境:

 1)配置goland

進入配置調試選項窗口

設置輸入參數: --datadir C:\区块链DB存放路径 console

其中:

--datadir 後面的路徑是之前建立好的路徑,keystore和database在該路徑下。

後面跟著的console 是打開交互界面的意思

2) 開始單步調試:

Console可以輸入命令,且有兩個之前申請的賬戶,并且餘額是配置值:

後面就可以通過命令行發送交易、挖礦啦!!!

3)交易:

var tx = {from: "0x8c9e414ed75674b150c31a8ece644a39e636196a", to: "0x2cdce66e86a3ca79b4e3ba19c1f3eecccb28a869", value: web3.toWei(0.2, "ether")}

personal.sendTransaction(tx,’eth’)

記住hash:"0xf0e88f0715c57e7b33b612432410b4c5fc54ea9fe22caaa01a7ae46ce1e08d46"

此時,查看txpool下的狀態:

4) 挖礦:

開始挖礦:miner.start()

PC上挖礦很慢,等了很久才:

代表生成了第一個塊

使用transaction hash查詢:

查看這個transaction所在塊:

不要挖太久,否則你的電腦會受不了的!!!

趕緊停止挖礦:miner.stop()

修改挖礦收益地址:miner.setEtherbase():

8 . 多节点调试:

1)添加peer:建立私链后,第一个P2P网络需要至少2个节点,这两个节点需要进入console输入,其中peer信息通过对端在console下输入admin,查找“enode://”字样获取,并将”[::]”替换为自己的IP地址即可:

admin.addPeer("enode://e53ed891cb0fcaa5ea25fd19318c80a9b055415f03bd2844ab4159df17dd8a92118fc030d9477d1e7dee6be556135cf4a83fb08d93842c4b32847d0e4ee7d130@[192.168.0.194]:30303")

来建立连接,建立连接需要双方交互4对消息,等待20s左后的时间就可以建立成功,通过在console下敲:admin.peers就能验证是否成功

2)挖矿前需要先解锁账户,设置矿工账户,才能挖矿成功:

personal.unlockAccount("0xe876ddc8662ef8d70438d9097b7df9a53b494091","123")

miner.setCoinbase(eth.accounts[1] )

miner.start()

相关文章

网友评论

      本文标题:windows下单步调试以太坊代码

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