安装、使用Truffle(ubuntu18.04)

2019/10/09

Truffle是一个世界级的开发环境、测试框架,以太坊的资源管理通道,致力于让以太坊上的开发变得简单。简单来说,它让区块链测试变得简单。


安装
truffle官方文档
在安装前,我们需要NodeJS v8.9.4或者更高版本。安装nodejs

npm install -g truffle

truffle version
#查看版本

使用

truffle init
%初始化一个空项目,会生成三个文件夹 contracts(包含Migrations.sol,之后得将要部署的合约放在里面)、migrations(包含1_initial_migration.js,truffle migrate会执行该js)、test(空文件夹),以及两个js配置文件(一个win,一个mac/linux,与truffle部署网络相关)

truffle develop
%开启truffle自带的一个以太坊环境。并创建10个账户,带有余额,console里面调用web3接口。web3.js是以太坊去中心化应用DApp必备的JavaScript库,提供了与Geth通信的JavaScript API(https://github.com/ethereum/wiki/wiki/javascript-API),使用JSON-RPC协议与Geth通信。以太坊只提供了JSON-RPC接口,而web.js是一个封装了JSON-RPC的API库(https://github.com/ethereum/wiki/wiki/json-rpc 直接调用不方便)

truffle compile
#编译合约
truffle migrate
#部署合约

具体如何调用合约,见这篇博客:https://www.trufflesuite.com/docs/truffle/getting-started/interacting-with-your-contracts

在编译的时候,由于truffle使用的solidity编译器版本可能与我们需要的(合约中规定的)不同,解决方法见:truffle编译器版本与合约不符问题


我们需要安装Ethereum客户端来支持JSON RPC API的调用。
有许多的以太坊客户端可以选择。
那么在本地开发可以使用Canache、Ethereumjs-testrpc、或者truffle自带的Truffle Develop。
而主网部署时使用Geth。

你可能感兴趣的:(Linux,Basic)