主页 > 如何下载imtoken > 以太坊合约自动编译详解1

以太坊合约自动编译详解1

如何下载imtoken 2023-10-18 05:12:05

Truffle 是目前最流行的以太坊开发框架。 它使用 JavaScript 编写,支持智能合约的编译、部署和测试。 1、安装Truffle 首先安装Truffle所依赖的NodeJS:

Truffle 是目前最流行的以太坊开发框架。 它使用 JavaScript 编写,支持智能合约的编译、部署和测试。

1.安装松露

首先安装Truffle依赖的NodeJS:

卷曲-sL | 须藤 -E 庆典 -

sudo apt-get install -y nodejs

sudo apt-get 安装 npm

配置npm源为国内源(可选,加快下载速度):

sudo npm config set registry 安装 Truffle

须藤 npm 安装 -g 松露

2.创建项目

如果要创建一个空项目,可以使用以下命令:

松露初始化

在早期版本的 truffle 中,刚刚创建的项目也会包含 metacoin 的示例代码。 新版truffle引入了box的概念,所有示例代码都以box的形式提供。 因此,我们不需要使用truffle init命令,直接通过以下命令下载metacoin的示例代码:

松露拆箱元币

代码结构如下图所示:

主要分为3个部分:

● contracts目录包含Solidity合约代码,其中Migrations.sol是必需的,其他都是你自己写的合约代码。

● migrations目录包含合约部署脚本,其中1_initial_migration.js用于部署Migrations.sol,其他脚本会依次执行。

● 测试代码在test目录下。

3.安装以太坊客户端

必须将智能合约部署到链上进行测试。 您可以选择部署到一些公共测试链,例如 Rinkeby 或 Ropsten。 缺点是部署和测试时间比较长,需要一定的时间来赚取假代币以防out gas。

另一种方式是部署在私有链上。 Truffle 官方推荐使用以下两个客户端:

● 甘那许

● 松露开发

伽纳彻

Ganache这个名字比较陌生,但是它的前身testRPC却家喻户晓。 网上很多老文章都用到了testRPC。 Ganache 的意思是奶油巧克力。 据说很久以前,一个学徒用太多的牛奶制作了巧克力。 师傅刚要骂他以太坊合约怎么玩,结果他尝了尝,发现真的很好吃,于是一种新的巧克力诞生了~ Truffle就是松露巧克力,一般都是以Ganache为核心,再撒上可可粉,所以这两款产品的名字还是很贴切的。

Ganache现在有两个版本,一个是图形界面的版本,下载地址:

这些可执行文件的后缀比较奇怪,对应关系见下图:

● Windows:Ganache-*.appx

● Mac:Ganache-*.dmg

● Linux:Ganache-*.AppImage

另一种是命令行版,下载方法:

sudo npm install -g ganache-cli

具体命令行参数配置见github:

本文使用带有图形界面的 Ganache 版本。

松露开发

这是truffle内置的客户端,基本类似于命令行版的Ganache。 唯一需要注意的是,在truffle develop中执行truffle命令时需要省略前面的“truffle”。 例如“truffle compile”只需要输入“compile”。

4.编译部署合约

Ganache 默认运行在 7545 端口,可以在界面右上角的“设置”中更改。 运行后默认创建10个账户,每个账户余额为100ETH。

要部署到链上,您需要告诉 truffle IP、端口和网络 ID。 修改 truffle.js:

模块.exports = {

网络:{

发展: {

主机:'本地主机',

端口:'7545'以太坊合约怎么玩

network_id: '*' // 匹配任意网络id

}

}

};

然后使用如下两条命令进行编译部署:

松露编译

松露迁移

5.测试合约

测试代码已经写在metacoin的示例代码中,只需使用以下命令运行即可:

松露测试

进入Ganache查看运行结果:

● 账户选项卡:第一个账户中的ETH略有减少,因为交易消耗了gas

● 区块标签:Ganache是​​自动挖矿,产生6个新区块,每个区块有一笔交易

● 交易标签:新增6笔交易,可点击查看交易明细