truffle 在 window 中的开发使用

  1. 介绍

目前以太坊开发智能合约的语言官方推荐是solidity,可以使用remix 在线开发, 也可以使用truffle开发框架.

这里推荐的是用truffle。

    2. 安装

 truffle 不同的版本也是有一定差异的,这里使用truffle最新版本 v5.0.1。 这里只针对此版本做的演示

 truffle 安装需要前置软件是 nodejs、npm、 ganache(模拟区块链节点)和 truffle(智能合约开发框架)

 windows安装nodejs 可以直接去下载 压缩版的nodejs,配置环境变量

一般安装好nodejs 就可以使用npm了 

 我的 nodejs 版本: v8.12.0

npm :6.4.1

 ganache 安装  npm install -g ganache-cli  =>v6.2.5

 truffle安装 npm install -g truffle   => 5.0.1 

以上 环境就安装好了 。 

  

3. 创建一个DEMO 项目,使用官方提供的项目 

  创建一个test文件价,进入test,

   运行  truffle unbox webpack 将会初始化一个MetaCoin的演示项目, 生成如下图所示项目结构

之后,我们需要首先将truffle.js文件名修改为truffle-config.js。如果不修改的话,直接执行truffle compile命令会报出缺少对象800A138F的错误:

        

接下来,另外打开一个dos命令窗口,输入ganache-cli命令,启动模拟节点,命令执行结果如下所示:

我们需要将truffle-config.js文件中的host、port与上述图片中圈出的ip和端口更改一致

同时还需要在app/scripts/index.js中的host、port与上述图片中更改一致

然后,我们编译项目 truffle compile。 这时候呢 可能编译出现错误,主要是说明版本问题导致,可能官方的还是以前旧版本的 没有同步,那我们自己手动修改下版本的问题。

 我们下载另外一个项目 。新建一个文件夹 , 使用truffle unbox  metacoin 

 下载好 metacoin项目后, 把里面的  contracts/*.sol拷贝到test/contracts/覆盖

再次进行 truffle compile  就可以编译成功了。 如下图

但是过2天, 突然升级到 pragma solidity >=0.4.21 <0.6.0;  好像

接下来部署到节点上去

truffle migrate --network ganache     ganache 指向的是 truffle-config.js中的 networks配置

一定要注意 -- 是2个横杠

启动 web app

 npm run dev 将默认在8080端口启动web 服务器. 打开浏览器 http://localhost:8080 如下

接下来 我们就可以使用ganache 提供的账户 ,进行转账操作。 同时 在ganache-cli 中也可以看到 创建的txhash,可以交易所在的blockNumber.

命令介绍

Commands:

  Compile:              truffle compile
  Migrate:              truffle migrate
  Test contracts:       truffle test
  Run linter:           npm run lint
  Run dev server:       npm run dev
  Build for production: npm run build

    

猜你喜欢

转载自blog.csdn.net/wuhualong1314/article/details/85851682
今日推荐