Truffle是一个世界级的用于以太坊区块链开发的开发环境、测试框架和资源处理流水线,其最新版本为Truffle 5,中文版文档由汇智网翻译整理,访问地址:http://cw.hubwiz.com/card/c/truffle-5-manual/。
Truffle的主要特性包括:
- 内置的智能合约编译、链接、部署和二进制文件管理
- 支持快速开发的自动化合约测试
- 支持脚本的可扩展的部署与迁移框架
- 内置网络管理功能,可支持部署到任何数量的公链和私链
- 支持EthPM & NPM包管理,遵循ERC190标准
- 交互式控制台可以直接与合约通信
- 可配置构建流水线可支持紧密集成
- 支持在Traffule环境中运行外部JavaScript脚本。
如果希望快速掌握区块链应用的开发,推荐汇智网的 区块链应用开发系列教程, 内容涵盖比特币、以太坊、eos、超级账本fabric和tendermint等多种区块链, 支持 java、go、c#、nodejs、python、php、dart等多种开发语言。
Truffle命令
- truffle命令行概述
- truffle build - 构建项目
- truffle compile - 编译合约
- truffle config - 分析功能开关
- truffle console - 启动控制台
- truffle create - 创建新构件
- truffle debug - 调试链上交易
- truffle deploy - 部署合约
- truffle develop - 启动开发控制台
- truffle exec - 执行JS脚本
- truffle help - 帮助信息
- truffle init - 初始化项目
- truffle install - 安装以太坊包
- truffle migrate - 部署合约
- truffle networks - 检查网络构件
- truffle opcode - 显示合约操作码
- truffle publish - 发布以太坊包
- truffle run - 运行插件命令
- truffle test - 执行测试
- truffle unbox - 下载项目模板
- truffle version - 显示i版本信息
- truffle watch - 自动重新构建
Truffle配置文件
- truffle配置文件概述
- networks - 网络配置
- contracts_directory - 合约目录配置
- contracts_build_directory - 合约构建目录配置
- migrations_directory - 迁移脚本目录配置
- mocha - 测试配置
- compilers.solc - Solidity编译器配置
- compilers.external - 外部编译器配置
合约抽象层API
- 合约抽象对象概述
- MyContract.new - 部署新合约
- MyContract.at - 载入已部署合约
- MyContract.deployed - 载入默认合约
- MyContract.link - 链接合约库
- MyContract.networks - 获取网络列表
- MyContract.setProvider - 设置web3提供器
- MyContract.setNetwork - 设置网络
- MyContract.hasNetwork - 检测指定网络
- MyContract.defaults - 实例默认值
- MyContract.clone - 克隆合约抽象
- MyContract.numberFormat - 数值格式
- MyContract.timeout - 交易超时区块数
- MyContract.autoGas - 是否自动估算gas
- MyContract.gasMultiplier - 设置gas估算倍数