ChainIDE 3. 使用truffle部署合约
Posted 软件工程小施同学
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ChainIDE 3. 使用truffle部署合约相关的知识,希望对你有一定的参考价值。
1.使用truffle部署合约
truffle使用以太坊虚拟机 (EVM) 为区块链提供世界一流的开发环境、测试框架和资产管理,旨在让开发人员更轻松地进行开发。
从ChainIDE 2.1版本开始支持Terminal功能,可以使用后台进行truffle框架的测试编译和部署功能。
本教程目的在于教导如何在chainIDE中使用truffle,而具体的truffle用法请查阅其相关文档。
打开命令行
点击右下角的”输出“,再点击中间的“命令行”,再点击“truffle”,即可切换到命令行界面。
创建项目工程
Truffle 大多数命令都是在 Truffle 项目目录下运行的。 所以第一步是创建一个 Truffle 项目。 可以创建一个空项目模板,不过对于刚接触Truffle的同学,推荐使用Truffle Boxes,它提供了示例应用代码和项目模板。 我们将使用MetaCoin box作为案例,它创建一个可以在帐户之间转移的Token(代币),开发者可以修改案例里的相关文件来进行开发,这样方便了许多。
- 1.为 Truffle 项目创建新目录:
mkdir MetaCoin cd MetaCoin
- 2.下载 (“unbox”) MetaCoin box:
truffle unbox metacoin
注解
也可以使用 truffle unbox <box-name> 命令下载其他的 Box
注解
如果要创建没有合约的空工程,可以使用 truffle init
在操作完成之后,就有这样的一个项目结构:
-
contracts/
: Solidity合约目录 -
migrations/
: 部署脚本文件目录 -
test/
: 测试脚本目录,参考 如何测试应用? -
truffle-config.js: Truffle 配置文件
使用测试
-
1.打开控制台终端,运行 Solidity 测试用例:
truffle test ./test/TestMetaCoin.sol
我们可以看到下面的输出:
运行测试用例的时候。期望的行为,会输出在控制台
-
1.运行 javascript 测试用例
truffle test ./test/metacoin.js
我们可以看到下面的输出:
编译合约
- 1.编译智能合约:
truffle compile
我们可以看到下面的输出:
使用 Truffle Develop 部署合约
注解
如果使用 Ganache , 可以直接跳到下一部分。
为了部署我们的合约,我们需要连接到区块链网络。Truffle 提供了一个内置的个人模拟区块链,它可以帮助我们用来测试。注意,这个区块链是内地在我们本地的系统里面,他不和以太坊的组网进行连接。
我们可以使用Truffle Develop来创建区块链,并与之交互。
- 1.运行 Truffle Develop:
truffle develop
控制台会显示10个账号,和他们对你的私钥,这些账号可以用来和区块链进行交互。
2. 在 truffle(develop)> 提示符(因为提供了一个交互式控制台)下, Truffle 的命令可以不带前缀 truffle
执行。比如,可以直接输入compile
来执行truffle compile
,以及直接输入 migrate
来部署编译的智能合约到区块链(相当于truffle migrate
):
migrate
控制台会显示交易的ID号,部署的合约地址。以及交易的花费和一些相关的状态。
3. 使用truffle部署合约 - ChainIDE-Chinese
以上是关于ChainIDE 3. 使用truffle部署合约的主要内容,如果未能解决你的问题,请参考以下文章
区块链入门Truffle 项目实战,Solidity IDE, 智能合约部署