智慧型合約開發自測環境搭建並簡單示例

2021-08-19 18:01:26 字數 3286 閱讀 5476

智慧型合約環境搭建

編輯器

vscode + solidity

外掛程式

編譯器solc

npm install -g solc// 

前提安裝

node

和npm

,需要sudo

許可權sudo apt install nodejs/npm

或者sudo add-apt-repository ppa:ethereum/ethereum

sudo apt-get update

sudo apt-get install solc

參考

測試testrpc

//pip installeth-testrpc // 

前提sudoapt install python-pip, --

這個是錯誤的

sudo npm install -g ethereumjs-testrpc

開發框架

truffle

npm install -gtruffle

5 truffle

命令

1.     

建立專案目錄

mkdir conference

cd conference

2.     

建立專案

truffle init

3.     

部署truffle migrate / deploy

//在另乙個終端裡通過執行

testrpc

來啟動乙個節點(你也可以用

geth

):回到之前的終端中,輸入

truffledeploy

。這條命令會部署之前

truffleinit

產生的模板合約到網路上。任何你可能遇到的錯誤資訊都會在

testrpc

的終端或者執行

truffle

的終端中輸出。

在使用trufflemigrate

進行智慧型合約

test

環境發布時如果未配置正確會出現以下異常:

truffle migrate

error: no network specified. cannotdetermine current networkat object.detect (/usr/local/lib/node_modules/truffle/build/cli.bundled.js:43157:23)at /usr/local/lib/node_modules/truffle/build/cli.bundled.js:200497:19atfinished (/usr/local/lib/node_modules/truffle/build/cli.bundled.js:43085:9)at/usr/local/lib/node_modules/truffle/build/cli.bundled.js:198408:14at/usr/local/lib/node_modules/truffle/build/cli.bundled.js:68162:7at/usr/local/lib/node_modules/truffle/build/cli.bundled.js:163793: at/usr/local/lib/node_modules/truffle/build/cli.bundled.js:160353:16at replenish(/usr/local/lib/node_modules/truffle/build/cli.bundled.js:160873:25)atiterateecallback(/usr/local/lib/node_modules/truffle/build/cli.bundled.js:160863:17)at/usr/local/lib/node_modules/truffle/build/cli.bundled.js:160838:16

導致上面異常的原因為是因為

truffle.js

truffle.js

檔案,修改**為類似如下配置即可解決問題:

module.exports = }

};4.      

編譯truffle compile

5.      

測試truffle test

6.  

互動truffle console

6 sample

1.     

建立專案

mkdir helloworld

cd helloworld

truffle init

目錄如下:

contractsmigrations testtruffle-config.js truffle.js

2.     

編寫**

在contracts

目錄下vim helloworld.sol

內容如下:

pragmasolidity^0.4.4; 

contract helloworld

}3.     

編寫部署指令碼:migrations/2_deploy_contracts.js

4.     

var 

helloworld =artifacts.require(

"helloworld"

);module

.exports = 

function

(deployer)

5.     

編譯:truffle compile

6.     

修改部署檔案

truffle.js

,內容如下:

module.exports=

} };

7.     

在另乙個終端啟動

testrpc

testrpc

8.     

部署:trufflemigrates 

或deploy

truffle migrates  --network live

//對應truffle.js中的live

9.     

truffle console輸入:

helloworld.deployed().then(instance=>);

10.    

執行合約

contract.sayhello()

一 EOS智慧型合約開發環境的搭建

筆者系統環境 win10企業版 整體執行環境 在win10裡面開啟hyper v虛擬機器服務,然後在虛擬機器裡面安裝ubantu16.04系統,接著在ubantu16.04系統裡安裝eosio,包含命令列環境 cleos等 以及智慧型合約編譯環境 eosio.cdt 到這裡就完成了eos智慧型合約開...

阿希鏈 智慧型合約開發環境搭建

asch智慧型合約支援在macos ubuntu 和windows三種平台下進行開發。基本安裝步驟如下 由於asch智慧型合約開發環境基於node.js及vscode為搭建,除了基礎依賴環境與系統平台相關外其餘部分在不同平台上類似。故基礎依賴環境分系統介紹,其餘部分統一介紹。基礎依賴環境主要包括 包...

EOS智慧型合約開發 一 EOS環境搭建和啟動節點

上節介紹了eos智慧型合約開發之eos環境搭建及啟動節點 那麼,節點啟動後我們要做的第一件事兒是什麼呢?就是我們首先要有賬號,但是有賬號的前提是什麼呢?倒不是先建立賬號,而是先要有自己的一組私鑰,有了私鑰才能有賬號,有賬號的前提還是要有錢包。所以,最開始我們是建立錢包,錢包是用來管理我們的金鑰的。使...