Truffle 是以太坊开发的标准化工具,其项目结构设计清晰且模块化。以下是典型 Truffle 项目的核心目录与文件说明:
项目目录结构
📦 truffle_project
┓ contracts/ // 合约源代码目录
┓ migrations/ // 链接部署脚本目录
┓ test/ // 测试文件目录
┓ truffle-config.js // 配置文件
┓ package.json // Node.js 项目配置
┓ (其他依赖文件) // 如 .gitignore, README.md
关键文件说明
📄 truffle-config.js
- 配置 Solidity 编译器版本、网络参数(如本地 Ganache、Infura)和部署细节
- 示例:
networks: { development: { host: "127.0.0.1", port: 7545 } }
📦 migrations/
- 存放
.sol
合约的迁移脚本(如1_initial_migration.js
) - 每个脚本对应一个合约部署步骤,使用
migrate
命令自动执行
📦 test/
- 包含以
.sol
为后缀的合约测试文件 - 示例:
TestToken.sol
可通过truffle test
命令运行
📄 contracts/
- 核心合约文件(如
ERC20.sol
)使用pragma solidity ^0.8.0
定义版本 - 合约间通过
import
引用,如import "./Token.sol";
扩展阅读
🔗 Truffle 快速入门指南 了解如何初始化项目并部署合约