## truffle 连接 TRUE chain 测试网/主网 ### 1、 安装 truffle ,确保truffle 可以在ETH测试网上部署合约。 ### 2、 创建 truffle 项目,truffle init ,后续操作都在这个目录下执行(文档以test2为目录 ### 3、 下载 truffle 依赖代码 truffle-hdwallet-provider cd test2 npm install truffle-hdwallet-provider ### 4、 修改代码 命令 cd test2/node_modules/truffle-hdwallet-provider/src/ vim index.js 代码如下: signTransaction(txParams, cb) { let pkey; const from = txParams.from.toLowerCase(); if (tmp_wallets[from]) { pkey = tmp_wallets[from].getPrivateKey(); } else { cb("Account not found"); } const newTxParams = Object.assign({ chainId: 18928 }, txParams) const tx = new Transaction(newTxParams); tx.sign(pkey); const rawTx = `0x${tx.serialize().toString("hex")}`; cb(null, rawTx); }, 注意:18928是truechain 测试网的chainID ,19330 是 truechain 主网的chainID,需要配合配置文件更改 ![](https://img.kancloud.cn/d6/f4/d6f4f41a296b14925d6cbfe8b9479d47_1280x668.png) ### 5、 编译 下载依赖 ``` cd truffle-hdwallet-provider ``` ``` npm i ``` 编译 ``` npm run prepare ``` 注意: 直到执行完成,如出现任何安装包问题,请下载相关安装包 ### 6、修改truffle 配置文件truffle-config.js 使用 HDWalletProvider,并且用 mnemonic 表示助记词。如下图 ![](https://img.kancloud.cn/1c/96/1c96496533c5c19154963c9424036423_771x190.png) 在network 里面加入一个网络,如下图。 连接测试网,使用https://rpc.truescan.net/testnet 注意,需要配合chainID 连接正式网,使用https://rpc.truescan.net ![](https://img.kancloud.cn/30/f9/30f930e5eb2c3906e37b535e28e27e63_704x209.png) ### 7、编译 truffle compile ### 8、部署 truffle migrate --network private1 注意:部署要确保部署账户有相应的余额 ### 9 、说明 *以上truffle 使用基于v5.0.29 版本,请做版本适应