以太坊:Truffle框架入门之运行MetaCoin

一、Truffle是什么?

Truffle是一个世界级的开发环境,测试框架,以太坊的资源管理通道,致力于让以太坊上的开发变得简单,Truffle有以下:

  • 内置的智能合约编译,链接,部署和二进制文件的管理。
  • 快速开发下的自动合约测试。
  • 脚本化的,可扩展的部署与发布框架。
  • 部署到不管多少的公网或私网的网络环境管理功能
  • 使用EthPM&NPM提供的包管理,使用ERC190标准。
  • 与合约直接通信的直接交互控制台(写完合约就可以命令行里验证了)。
  • 可配的构建流程,支持紧密集成。
  • 在Truffle环境里支持执行外部的脚本。

二、下载MetaCoin样例进行环境搭建实战

2.1.下载MetaCoin

mkdir metacoin
cd metacoin
truffle unbox metacoin

truffle unbox 下载样例时,需要一个空的文件夹,因此我们这儿新建一个目录进行操作。

unbox

Truffle 的盒子Boxs装有很多非常实用的项目样板,可以让你忽略一些环境配置问题,从而可以集中与开发你自己的DApp的业务唯一性。

除此之外,Truffle Boxes能够容纳其他有用的组件、Solidity合约或者库,前后端视图等等。

所有这些都是一个完整的实例Dapp程序。都可以下载下来逐一研究,寻找适合自己目前业务模型的组件。

Truffle的官方Boxes地址:https://www.trufflesuite.com/boxes/

2.2.修改以太坊本地配置

vim truffle-config.js

2.3.启动ganache-cli

ganache-cli

 

原文使用的是testrpc,但是由于testrpc不能很好的处理拜占庭问题,会在合约部署的时候抛出异常。

testrpc

异常信息如下:

 2.4.编译合约

truffle compile

根据编译输出的路径地址./build/contracts,我们去查看一下

可以看到原来所在在contracts目录下的智能合约文件(有合约contract,有库library)均被编译成了json文件。

这些json文件就是truffle用来部署合约的编译文件。

2.5.部署合约

truffle migrate

部署结果如下:

2.6.测试合约

truffle test

没有报错就说明通过了,测试结果如下:



参考链接:https://www.jianshu.com/p/2e2b3b12eb0e

posted @ 2020-04-15 13:18  市井俗人  阅读(1264)  评论(0编辑  收藏  举报