EOS [EOS DAPP 开发] 02 - 开发环境配置和工具准备

pendingauth · 2019年05月08日 · 47 次阅读

本文转载自币乎,作者松果,原文链接:https://bihu.com/article/1199993824

代码编辑器

Visual Studio Code

微软出品的Visual Studio Code,简称VSCode,最适合用来作为开发DAPP的代码编辑器。

它支持Windows、Mac OS、Linux三大操作系统,内置了JavaScript、TypeScript和Node.js支持,且拥有丰富的插件生态系统,可通过安装插件来支持C++、C#、Python、PHP等其他语言。

对于EOS DAPP开发来说,支持Mac OS/Linux系统,可同时在一个编辑器中完成JS和C++的开发。

为了更好的开发,下载安装好VSCode后,搜索并安装如下插件:

  • C/C++

  • WebAssembly

  • CMake

  • CMake Tools

开发环境

Nodejs

Nodejs是JavaScript的服务端运行环境,让JavaScript可以在服务端运行(这在以前是Java/C#/PHP/Python/Ruby等语言做的事),这样前后端都使用JavaScript开发,节省了学习成本。

直接到官网下载安装包进行安装,nodejs的包管理工具(npm)会一起被安装,npm以后会被用来管理项目需要的各种第三方模块。

使用 node -v 和 npm -v 命令查看nodejs和npm版本:

建议安装较新的版本,如果已经安装了nodejs但版本较低,可以使用如下命令升级 nodejs :

sudo npm install -g n
sudo n stable


EOSIO

EOSIO目前的最新发布版本是1.6.2,现在可以直接通过安装包安装,不再使用源码的方式安装了。

https://github.com/EOSIO/eos/releases/tag/v1.6.2 根据自己的操作系统下载相应的安装包。

以Ubuntu 16.04系统为例,下载和安装EOSIO的命令如下:

wget https://github.com/eosio/eos/releases/download/v1.6.2/eosio_1.6.2-1-ubuntu-16.04_amd64.deb
sudo apt install ./eosio_1.6.2-1-ubuntu-16.04_amd64.deb

可执行命令:cleos、keosd、nodeos默认安装在 /usr/opt/eosio/1.6.2/bin 目录:

配置config.ini

运行nodeos时,可能会报一个 unrecognised option 'wallet-dir' 错误。

这是由于在1.3.0版本之前,config.ini默认忽略未知的配置项,但在1.3.0中被更改为报错。

此版本移除了nodeos的wallet_plugin插件,因此需要删除wallet_plugin插件相关的配置项,1.6.2还需要删除一个配置项:

  • 删除 wallet-dir

  • 删除 unlock-timeout

  • 删除 max-implicit-request

配置文件位置:

.local/share/eosio/nodeos/config/config.ini

然后添加如下配置:

producer-name = eosio
plugin = eosio::producer_plugin
plugin = eosio::chain_api_plugin
plugin = eosio::http_plugin
plugin = eosio::history_plugin
plugin = eosio::history_api_plugin

启动本地节点
nodeos -e

配置了eosio::chain_api_plugin插件后,可以通过RPC API获取区块链信息:http://127.0.0.1:8888/v1/chain/get_info

EOSIO.cdt

EOSIO CDT (EOSIO Contract Development Toolkit),EOSIO智能合约开发工具集,用于编译智能合约和生成ABI。

EOSIO现在把原来的除cleos、nodeos、keosd以外的命令都整合进EOSIO.cdt中,把区块链的运行和开发智能合约进行了分离,需要单独安装,目前最新版本是1.5.0。

https://github.com/EOSIO/eosio.cdt/releases/tag/v1.5.0 根据自己的操作系统下载相应的安装包。

以Ubuntu 16.04系统为例,下载和安装EOSIO的命令如下:

wget https://github.com/EOSIO/eosio.cdt/releases/download/v1.5.0/eosio.cdt_1.5.0-1_amd64.deb
sudo apt install ./eosio.cdt_1.5.0-1_amd64.deb

可执行命令默认安装在 /usr/opt/eosio.cdt/1.5.0/bin 目录:

Scatter

Scatter可以看做是EOS的桌面版钱包(以前是Chrome插件,现在改成桌面版了),同时还支持以太坊和波场。

到这里下载安装即可:https://get-scatter.com/downloadScatter。,后续会介绍如何使用

IPFS

IPFS(InterPlanetary File System)是一个内容寻址、版本化、去中心化的分布式文件系统。

真正的DApp是部署在分布式网络上的,这和IPFS天然契合。IPFS目前主要用于存储静态内容,也有很多开发者尝试在IPFS上部署动态网站,可以预见,IPFS真正发挥是在它成为分布式应用的载体的时候。

jsipfs 是IPFS的本地js实现,是一个node第三方模块,安装好nodejs后,使用npm进行安装,命令如下:

npm install -g ipfs

安装好后,终端输入 jsipfs 查看全部命令:

创建React项目

安装好nodejs后,使用 create-react-app 脚手架工具,就可以在本地生成一个react项目,命令如下:

npx create-react-app eos-dapp

注意,npx命令要求npm的版本在v5.2.0以上。项目生成后,使用 npm start 启动它:

cd eos-dapp
npm start

恭喜你,在 localhost:3000,启动了第一个React项目:

到现在,开发环境已经部署好了,用VSCode打开项目源码看看吧,后续会在它的基础上一步步搭建出DAPP。

补充:DAPP&EOS工具网站

dapp.review

DappReview是目前收录DAPP和公链种类最全的网站

dappradar.com

DappRadar也是收录和分析DAPP的网站

spider.store

蜘蛛商店,Dapp数据分析平台很好用,可以查看各公链日活、新增用户数等

eospark.com

EOS区块浏览器和数据服务提供商

eosflare.io

简洁的EOS区块浏览器

bloks.io

EOS区块浏览器和常用工具

eostitan.com

EOS各类数据的图表分析

暂无回复。
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册