当前位置: 首页 > news >正文

truffle

文章目录

    • truffle
    • 目录结构
    • 各文件作用
    • 在本地测试合约

truffle

项目来自https://github.com/Dapp-Learning-DAO/Dapp-Learning/blob/main/basic/04-web3js-truffle/README-CN.md

Truffle 是基于 Solidity 语言的一套开发框架,它简化了去中心化应用(Dapp)的构建和管理流程。本身是采用 Javascript 编写,支持智能合约的编译、部署和测试。

目录结构

contracts/: Solidity 合约目录

migrations/: 部署脚本文件目录

test/: 测试脚本目录,参考 如何测试应用?

truffle-config.js: Truffle 配置文件

各文件作用

contracts/SimpleToken.sol: 这是一个用 Solidity 编写的 erc20 代币 智能合约.
migrations/1_initial_migration.js: 这是一个部署脚本,用来部署 Migrations 合约,对应 Migrations.sol 文件。
truffle-config.js (之前是 truffle.js): Truffle 配置文件, 用来设置网络信息,和其他项目相关的设置。当我们使用内建的默认的 Truffle 命令时,这个文件留空也是可以的。

在本地测试合约

运行 truffle develop,系统会给出 10 个测试账号,包括钱包地址和私钥。

$ truffle develop
Truffle Develop started at http://127.0.0.1:9545/Accounts:
(0) 0x9a3f188e2c161ff4482aeb045546644b8d67120b
(1) 0x5cbbdd0348822e3e1714364d2181685adc0e6d8a
(2) 0x4b584bc2696c12684ec3368baff27a882b7b2a5e
(3) 0xa14784c20cbfd1a11bf29275c2f645c504def5ad
(4) 0x5dce815d7cc51366467537b483e9c67681cb1cb7
(5) 0x1765e4c4e3f0ddb10f1f99cfaea746ea7917a736
(6) 0xd885baef12d93f0d8f67c4dbd6150b0841009098
(7) 0x9de5081329d2795990d701a0baae889322786647
(8) 0x5e829e607a498a2d9df206f02e9ee8ae9ad4c67c
(9) 0x29b3614d41ff6a3c8c16871a82d0e407e8a5b225Private Keys:
(0) 0a8d9e2a470aedfabe279f16f629c5054a47d69b7d66d17ba65cdd7ca99876e1
(1) 1920e755c5a37c78e8926559b20df9631f88153a5b1335d2d53bf2dde0da796f
(2) 394d687218146c92adc5bd46600360bcc42f0a261859b2c79501dea5eb264ffe
(3) 30f3d558a203da5a9b6d9d194836c2c2b08799e92eb2d9f18ef445878be98c34
(4) 97bd6ec766613a0235ffb7b4c69bab601702e75b68403842ba21bb5a2bc3786a
(5) 9372baed783bb62ad3639f10e24fda0580490845735da62666e87353a8625ed0
(6) 0a8e8fa6e04b3bfb06cb12cc86f3beb168fa4f9e658fd7fb794096af8fa6559e
(7) 872707416f98cb7d8b3db925e4b4273b77e382753893ee9cf2e19ce89842d12a
(8) 82daa8ffc47246bbf0cb1bdc574658a98c1571a47bd647b18f7986c63ca47cff
(9) 040cdda01e0b34c00c39877078af2015bd16125fb4fabf1d7153b679e209409f

接下来配置本地网络参数,将下面 network 属性中 development 注释打开,host 配置成本地,port 配置成 truffle develop 给出的端口地址,如本例中端口是 9545。network_id 保留原状。

 development: {host: "127.0.0.1",port: 9545,network_id: "*"},

配置好以后即可运行 truffle compile 进行编译,truffle migrate 进行部署,truffle test 进行测试

> Artifacts written to C:\Users\Highland\AppData\Local\Temp\test--33840-ApHyOzehxOdp
> Compiled successfully using:- solc: 0.8.0+commit.c7dfd78e.Emscripten.clangTestSimpleToken√ testInitialBalanceUsingDeployedContract (1802ms)√ testTransfer (1723ms)Contract: SimpleToken√ Should put 100000 to the 0x9A3f188e2C161ff4482AEB045546644B8d67120B (1773ms)√ Transfer 100 to other account (2342ms)4 passing (32s)

相关文章:

  • SpringMVC 使用thymeleaf 进行数据展示
  • 微信小程序开发中关于首屏加载、本地数据持久化的思考
  • vscode源代码管理Tab-文件右侧标志(M、A 等)的含义
  • Unity AI-使用Ollama本地大语言模型运行框架运行本地Deepseek等模型实现聊天对话(二)
  • 线性代数与数据学习
  • k8s基本概念-YAML
  • flume----初步安装与配置
  • 9.Three.js中 ArrayCamera 多视角相机详解+示例代码
  • Dockerfile讲解与示例汇总
  • C++ 解决一个简单的图论问题 —— 最小生成树(以 Prim 算法为例)
  • <uniapp><插件><UTS>在uniapp中,创建自己的插件并发布到uni插件市场
  • Ubuntu安装SRS流媒体服务
  • 人智交互中的AI世代
  • 2025医疗领域AI发展五大核心趋势与路线研究
  • List--链表
  • C++ 表达式求值优先级、结合律与求值顺序(五十九)
  • 维度的语法:从列表的散文到 ndarray 的十四行诗
  • PostgreSQL oracle_fdw 扩展解析
  • 【DeepSeek认证】最好的MODBUS调试工具
  • 【JAVA ee初阶】多线程(3)
  • 五一假期上海铁路预计发送446万人次,同比增长8.4%
  • “上海-日喀则”直飞航线正式通航,将于5月1日开启首航
  • 人社部:将会同更多部门分行业、分领域制定专项培训计划
  • 俄罗斯称已收复库尔斯克州
  • 杨荫凯履新浙江省委常委、组织部部长,曾任中央财办副主任
  • 机票搜索热度飙升,透过数据看五一假期旅游热度