部署智能合约到Ropsten Test Net - ScnuWang/MessageBoard GitHub Wiki
-
安装HDWalletProvider模块
npm install truffle-hdwallet-provider -
修改truffle.js
引入HDWalletProvider 模块:var HDWalletProvider = require("truffle-hdwallet-provider");
定义12个助记符:var mnemonic = "......"; // 通过注册inrura账户获取 (需要梯子)在network下添加 ropsten: { provider: function() { return new HDWalletProvider(mnemonic, "https://ropsten.infura.io/acess_token"); // acess token通过注册inrura账户获取 }, network_id: 3, },
-
修改app.js App.web3Provider = new Web3.providers.HttpProvider('https://ropsten.infura.io/acess_token'); // acess token通过注册inrura账户获取
-
MetaMask 在Ropsten Test Net下登录一个包含余额的账户(余额可以到http://faucet.ropsten.be:3001/ 免费领取)
-
编译智能合约 truffle compile
-
迁移智能合约 truffle migrate --network ropsten
-
异常: Error encountered, bailing. Network state unknown. Review successful transactions manually. exceeds block gas limit
这个错误是由于 gas给的(或者消耗的)太多超出区块最大的gas限制量了(以太坊没有像比特币1M硬编码的限制,是通过Gas Limit来限制区块的大小)
gas: Gas limit 默认值是 4712388.