1. 程式人生 > >geth建立私鏈以及釋出第一個智慧合約

geth建立私鏈以及釋出第一個智慧合約

原部落格地址

https://blog.csdn.net/qq_36124194/article/details/83686740


geth建立私鏈

初始化genesis.json檔案

geth --datadir data init gensis.json

  

    啟動私鏈

    有很多可選引數
    在這裡插入圖片描述
    在這裡插入圖片描述

    geth --datadir --verbosity 4 console 2>>detail.log
    
      

      做好前期準備工作

      新建好賬戶

      personal.newAccount("123456")
      
        

        挖礦獲取一定的以太幣用於釋出自己的智慧合約,並檢驗是否挖到礦

        miner.start();admin.sleepBlocks(1);miner.stop()
        eth.getBalance(myAddress)
        
          

          將自己的賬戶用變量表示,方便書寫

          myAddress = "地址"
          
            

            在remix測試好智慧合約程式碼,然後通過solc來編譯程式碼

            solc --bin code.tol
            solc --abi code.tol
            
              

              在這裡插入圖片描述
              在這裡插入圖片描述
              然後用變量表示程式碼
              在這裡插入圖片描述

              開始部署智慧合約

              首先解鎖賬戶

              在這裡插入圖片描述

              然後部署

              在這裡插入圖片描述
              到了這裡還沒有成功,部署智慧合約的交易還沒有得到確認,可以通過以下命令確認

              txpool.status
              

                在這裡插入圖片描述
                pending表示交易還沒確認
                通過挖礦確認

                miner.start();admin.sleepBlocks(1);miner.stop()
                
                  

                  呼叫智慧合約

                  不寫到鏈上的呼叫

                  在這裡插入圖片描述
                  其中contract是合約遍歷,multiply是合約函式

                  寫到鏈上的呼叫

                  在這裡插入圖片描述
                  這是個交易,所以也需要挖礦確認