基于以太坊的智能合约开发入门

基于以太坊的智能合约开发入门

环境安装

现在我选择这里 Ubuntu 16.10 LTS 版本

  • 安装nodejs 环境 (通过apt-get 安装的默认是nodejs 4.2.6) 建议安装官网较新的版本
  • 接着修改registry地址 为淘宝镜像或者其他国内镜像可以加速包安装过程

    1
    2
    npm config set registry https://registry.npm.taobao.org
    npm info underscore (如果上面配置正确这个命令会有字符串response)
  • 可选安装yarn 一个号称能比npm更快的包管理工具 ( npm install -g yarn )

  • 如果不是安装的最新的nodejs 可以用下面的方法升级( npm install -g n && n stable )
  • 接下来安装 truffle ( npm install -g truffle 或者使用yarn 安装 yarn global add truffle )
  • 安装 testrpc 或者 geth ( 开发测试可以直接安装 testrpc npm install -g testrpc ; yarn global add testrpc )
  • 安装 solc 用web3js 可以生成 abi文件和bin文件 ( npm install -g solc ; yarn global add solc )
  • 下载安装web3j wapper tool web3j tool
    解压即可使用 bin/web3j solidity generate … …

    npm 和yarn命令转换cheat sheet
    image

使用truffle 初始化项目,并编写智能合约,生成智能合约abi文件和bin文件等

  • 初始化项目 truffle-demo ( mkdir truffle-demo && cd truffle && truffle init )

    image
    image

  • 编写智能合约,并编译 ( truffle compile )
    image
    image
  • 启动区块链测试环境 testrpc
    image
  • 修改配置文件 truffle.js 的host为127.0.0.1或者localhost ,端口按testrpc提示修改

  • 修改migration目录下的migrate 文件 执行 ( truffle migrate )
    image
    image
    image

  • truffle console 进入控制台进行简单验证
    image
    image
    image
  • truffle build 编译

  • truffle publish 发布

  • truffle networks 发布
    image

  • 导出abi文件和bin文件 ( solcjs contracts/ConvertLib.sol –abi –bin –optimize -o build/ –verbose )
    image
    image
  • 导出abi文件和bin文件 ( web3j solidity generate xxx.bin xxx.abi -p com.xxx.smart.contracs -o outputdir )
    注意参数有先后顺序,先xxx.bin 再xxx.abi 反了会报错的
    image
    image
    image
    image

TODO TBD

文章目录
  1. 1. 基于以太坊的智能合约开发入门
    1. 1.1. 环境安装
    2. 1.2. 使用truffle 初始化项目,并编写智能合约,生成智能合约abi文件和bin文件等
    3. 1.3. TODO TBD