发布者认证信息(营业执照和身份证)未完善,请登录后完善信息登录
 终于领会如何使用Truffle部署智能合约 - 三农网
Hi,你好,欢迎来到三农网
  • 产品
  • 求购
  • 公司
  • 展会
  • 招商
  • 资讯
当前位置: 首页 » 资讯 » 三农时评 找商家、找信息优选VIP,安全更可靠!
终于领会如何使用Truffle部署智能合约
发布日期:2022-01-01 20:31:42  浏览次数:14

Truffle是一个开发环境(提供用于编译,部署,测试和构建的命令行工具),框架(提供各种程序包以使其易于编写测试,部署代码,构建客户端等)和资产管道(发布软件包并使用其他人发布的软件包来构建基于以太坊的DApp。

使用Truffle,您可以获得:

内置的智能合约编译,链接,部署和二进制管理。 与Mocha和Chai进行自动化合同测试。 可配置的构建管道,支持自定义构建过程。 可编写脚本的部署和迁移框架。 网络管理,用于部署到许多公共和专用网络。 用于直接合同通信的交互式控制台。 在开发过程中立即重建资产。 外部脚本运行程序,在Truffle环境中执行脚本。

要使用大多数Truffle命令,您需要在现有的Truffle项目上运行它们。因此,第一步是创建一个Truffle项目,让我们从安装Truffle开始:

$ npm install -g truffle 

确保已安装:

$ truffle  Truffle  - a development framework for Ethereum  Usage: truffle  [options]  Commands:   init   Initialize new Ethereum project with example contracts and tests  ... 

然后创建项目:

$ mkdir storage_smart_contract_example  $ cd storage_smart_contract_example  $ truffle init 

在这里,您可以运行Truffle编译,Truffle迁移和Truffle测试来编译您的合同,将这些合同部署到网络中,并运行其关联的单元测试。

Truffle与本地开发区块链服务器捆绑在一起,当您调用上述命令时,该服务器会自动启动。如果您想配置更高级的开发环境,我们建议您通过在命令行上运行npm install -g ganache-cli来单独安装区块链服务器。

ganache-cli:Truffle的区块链服务器的命令行版本。

ganache:服务器的GUI,显示您的交易历史记录和链状态。

Truffle项目的结构

您创建的Truffle文件夹如下所示:

1.合同

2.迁移

3.测试

4. truffle-

5.

现在进一步编写代码,您将看到Truffle为我们创建了文件结构。转到合同文件夹并创建文件,然后在其中写入智能合同的代码。

pragma solidity ^;  contract Storage {      uint256 storedData;  function set(uint256 data) {      storedData = data;   }  function get() constant returns (uint256) {      return storedData;   }  } 

现在转到migrations / 并将其修改为如下所示:

var Storage = ("./");   = function(deployer) {     (Storage);  }; 

现在我们已经有了基本的设置,我们需要将其部署到区块链上,让我们使用testrpc可以很好地完成测试开发目的,在一个单独的选项卡上,键入以下命令:

$ npm install -g ethereumjs-testrpc  $ testrpc EthereumJS TestRPC   Available Accounts  ==================  … 

然后返回运行Truffle项目的选项卡:

$ truffle compile  $ truffle migrate 

这样我们就完成了合同的部署,让我们检查一下我们是否能够调用合同功能。

$ truffle console  truffle(development)>  ().then(instance => ()).then(result => storeData = result)  { [String: '0'] s: 1, e: 0, c: [ 0 ] }  truffle(development)> ()  '0' 

现在让我们看看是否可以将storeData设置为值99。

truffle(development)>  ().then(instance => (99)).then(result => newStorageData = result) '0xc5e2f9c9da4cf9f563c8e59073d5b6ca9458f112a6dcfc14aaea7c16a99422d4' truffle(development)> ().then(instance => ()).then(result => storeData = result)  { [String: '99'] s: 1, e: 1, c: [ 99 ] }  truffle(development)> () '99' 

目前为止,我们已经成功的部署和测试了Truffle项目合同,

如有任何疑问请在留言区进行留言。

 

VIP企业最新发布
全站最新发布
最新VIP企业
背景开启

三农网是一个开放的平台,信息全部为用户自行注册发布!并不代表本网赞同其观点或证实其内容的真实性,需用户自行承担信息的真实性,图片及其他资源的版权责任! 本站不承担此类作品侵权行为的直接责任及连带责任。

如若本网有任何内容侵犯您的权益,请联系 QQ: 1130861724

网站首页 | 实时热点 | 侵权删除 | 付款方式 | 联系方式 | 法律责任 | 网站地图 ©2022 zxb2b.com 三农网,中国大型农产品交易电商平台 鄂公网安备42018502006996 SITEMAPS | 鄂ICP备14015623号-20

返回顶部