前言
以太坊是区块链开发领域最好的编程平台,而Truffle是以太坊(Ethereum)最受欢迎的一个开发框架。truffle是本地的用来编译、部署智能合约的工具。testrpc不同于geth,geth是真正的以太坊环境,testrpc是在本地使用内存模拟的一个以太坊环境,对于开发调试来说,更为方便快捷,当合约在testrpc中测试通过后,再部署到geth中去。
环境
ubuntu 16.0.4LTS
LTS Version: v6.11.2 (includes npm 3.10.10),安装可以参考博客:http://blog.csdn.net/vinsuan1993/article/details/77427237
git version 2.7.4
安装truffle
由于安装过程中各种等待甚至报错啥的,本人尝试了多次,都无法直接安装。只好使用淘宝镜像来进行安装。
先执行以下命令:
- 1
- 1
然后在安装(由于3.x的版本总是编译合约时报错,故选择了2.x的版本):
sudo -E npm install truffle@2.0.8 -g
执行完成之后,再执行上面的安装命令。安装完成之后,创建软连接,使之可以全局使用:
sudo ln -s /home/heres/tools/node-v6.11.2-linux-x64/bin/testrpc /usr/local/bin/testrpc
安装testrpc
sudo -E npm install ethereumjs-testrpc -g
运行testrpc可看到testrpc版本号、初始化以太坊地址和监听端口,此处版本号为v4.0.1
搭建一个简单的以太坊应用
mkdir mypro
cd mypro
truffle init
默认会生成一个MetaCoin的demo,可以从这个demo中学习truffle的架构
项目目录结构如图:
编译项目
$ truffle compile
部署之前先启动TestRPC(如上图)
$ testrpc
部署项目
$ truffle migrate
截图:
启动服务
$ truffle serve
启动服务后,可以在浏览器访问项目: http://localhost:8080/ ,网页界面如下: