系统环境
Ubuntu16.04; NodeJS: v6.10.2; NPM: 3.10.10; Truffle: 2.0.8; TestRPC: 3.0.5
安装步骤
注意:以root用户操作安装过程,否则可能安装不成功
1、安装nodejs 6.x版,此处我安装完毕版本是6.10.2,npm版本是3.10.10,参考《Ubuntu 16.04 安装NodeJs》
curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
sudo apt-get install -y nodejs
如果不成功,就在前面加上“sudo -E”。查看nodejs和npm版本:
root@blockchain:~$ nodejs -v v6.10.2 root@blockchain:~$ npm -v 3.10.10
2、安装TestRPC:
sudo -E npm install ethereumjs-testrpc -g
运行testrpc可看到testrpc版本号、初始化以太坊地址和监听端口,此处版本号为v3.0.5
root@blockchain:~$ testrpc Secp256k1 bindings are not compiled. Pure JS implementation will be used. EthereumJS TestRPC v3.0.5 Available Accounts ================== (0) 0x6f41fffc0338e715e8aac4851afc4079b712af70 ???? (1) 0xad8926fdb14c2ca283ab1e8a05c0b6707bc03f97 ???? (2) 0x1cb0ff92ec067169fd6b1b12c6d39a4f6c2cf6f9 ???? (3) 0x594b70524993798cb093ca8a2bd7f02f904b66d3 ???? (4) 0x2f1ee0930f00b0f3cdab66d916cbd1fa4fe9535a ???? (5) 0x5513a551c5aafaa8719a0df5bf398d4b3af4e211 ???? (6) 0xa1bf121993c23cc467eec8b7e453011dae250404 ???? (7) 0xe0b161979ebca95235c4cfeddfd11fb30d782a4d ???? (8) 0x093b30604ac41e054e71b670d8e3ab68360017c9 ???? (9) 0x1cac60d851a44305d7dd6ecf8ff32f3403427d3d ???? Private Keys ================== (0) db3ecbc77961edb030858411850bd1ed12915dcf3c13762ec3692989810c2870 (1) e0cc6b69516123fdf5d739dc9109ab486cf385affba555f0f03a7c74d7c1a88f (2) cea171049aa817c8ecade84ed8d20ce9e2312bed6e0f39548c9673a65bd47a47 (3) e7f5cbba7403d0c5ea421f6ce64165b79d5c13594ad4a0ffa27896b498d6f5ad (4) 6d1cd1fa965caf8a0b073faff072732de0eb0a8c153cc355f89eedb49c12ed12 (5) c535a490deefd452daab45b01daaf34366d6748afa5f0778aac5dae6c590c135 (6) 1292992fba6774016899237b8eb217108c5f9021e0e334aa5fad3db62e5c406b (7) 03d02b40ab919c9d51e26fdc2e70c221d65ec1970f1283acad8b3445c5771f56 (8) 018069b07dc4d177a612ef0e20f63b9962781ab2d57d2ad50d9361a9be804bc4 (9) cd348e9ee0bc2cfbda9b9822d42b3dd3b83d180425bc153ffbc7e7e5bf13fa28 HD Wallet ================== Mnemonic: say slight close trip refuse seven marble fun edge galaxy cash pioneer Base HD Path: m/44'/60'/0'/0/{account_index} Listening on localhost:8545
3、安装Truffle
因为直接使用“sudo -E npm install truffle -g“,多次尝试都安装不成功。故打算指定安装3.1.1版本,可安装成功。
但安装后发现公司电脑使用代理上网,安装完truffle 3.1.1版本在使用“truffle init”时会出现网络错误,百般查询后依然得不到解决。故装回2.0.8版本,因为该版本使用“truffle init”时不需要联网。
注意:公司内不使用代理上网的可忽略上述红色字体的提示。
安装时指定了truffle版本为2.0.8,
root@blockchain:~# sudo -E npm install truffle@2.0.8 -g
运行truffle命令查看是否安装成功:
root@blcokchain:~# truffle version Truffle v2.0.8
测试
1、首先开启TestRPC:
testrpc
2、创建一个工程目录
sudo mkdir truffleTest
3、进入该工程,并初始化该工程
root@blockchain:/home$ cd truffleTest root@blockchain:/home/truffleTest$ sudo truffle init root@blockchain:/home/truffleTest$ ls app contracts migrations test truffle.js
4、在该目录下编译并部署项目
sudo truffle compile # 编译项目 sudo truffle migrate # 部署到TestRPC sudo truffle serve # 开启服务
5、访问项目,打开浏览器,输入“http://localhost:8080”,则代表项目部署成功。