Truffle 5 手册

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配置文件
配置文件概述 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估算倍数
Truffle Box API
Truffle Box概述 Truffle Box配置文件 Truffle Box图像规范 Truffle Box发布流程
使用指南
在Truffle中使用Metamask

compilers.solc - SOlidity编译器配置

compilers.solc配置用来声明Solidity编译器的参数。支持solc的优化器设置。

可以指定:

  • solc-bin中的任何solc-js版本。指定一个你希望Truffle使用的版本
  • 一个本地编译的solc程序,不过你需要自己安装
  • 一个solc的docker镜像
  • 一个执行本地可用的solc的路径

配置示例

module.exports = {
  compilers: {
    solc: {
      version: <string>, // A version or constraint - Ex. "^0.5.0"
                         // Can also be set to "native" to use a native solc
      docker: <boolean>, // Use a version obtained through docker
      settings: {
        optimizer: {
          enabled: <boolean>,
          runs: <number>   // Optimize for how many times you intend to run the code
        },
        evmVersion: <string> // Default: "byzantium"
      }
    }
  }
}