1. 软件安装

1) 安装nodejs

安装完成后将node.exe所在路径加入环境变量PATH中,以便在cmd命令行中直接使用node和npm命令

下面的操作在git bash下进行

2) 安装solc

npm install -g solc

3) 安装truffle/ganache-cli

# 安装truffle
npm install -g truffle # 安装ganache-cli
npm install -g ganache-cli

4) 安装Ganache

官网

5) 安装web3

npm install -g web3

6) 安装webpack

npm install -g webpack

[可选安装]

1)安装geth

下载地址

该步骤可以跳过,安装Mist浏览器或Ethereum Wallet钱包的时候会安装geth

2) 安装Mist/Ethereum Wallet

github下载地址

安装完成后,将geth所在路径

C:\Users\<username>\AppData\Roaming\Mist\binaries\Geth\unpacked

加入环境变量PATH中,其中为你的用户名。

2. 创建dApp项目

1) 新建项目

$ mkdir demo
$ cd demo $ truffle unbox webpack
Downloading...
Unpacking...
Setting up...
Unbox successful. Sweet! 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 $ ls
app/ build/ migrations/ package-lock.json webpack.config.js
box-img-lg.png contracts/ node_modules/ test/
box-img-sm.png LICENSE package.json truffle.js

不要使用truffle unbox metacoin, metacoin中不包含后面需要用到的的package.json文件

2) 安装项目依赖的NPM包

$ npm install

3) 修改配置

由于使用命令行版的ganache-cli,需要修改truffle.js,将port修改为8545, 如果使用图形版的ganache,则不需要修改,其port就是7545。

$ vi truffle.js
# 设置内网
networks: {
development: {
host: "127.0.0.1",
port: 8545,
network_id: "*" // Match any network id
}
}

注意: 将ganache改为developement, 否则会出现如下提示:

Error: No network specified. Cannot determine current network.

4) 启动节点

另外打开一个git bash,输入如下命令启动节点:

$ ganache-cli

注意:

  • 单纯使用ganache-cli每次都随机生成10个账户地址
  • 如果保证每次启动,生成的账户都一致,需要加上-d参数,此外还可以使用--db指定链数据保存路径

如果配合metamask使用,建议ganache-cli -d启动

输出如下:

回到原来的终端

5) 编译合约

$ truffle compile

6) 部署合约

truffle migrate

如果成功,会出现如下提示:

Using network 'development'.

Running migration: 1_initial_migration.js
Deploying Migrations...
... 0x833670e1b1d67d41ab7c83d8dcae313641504122418d2a0191a6294cf88e6859
Migrations: 0xbd613fcb1b2e57137ccb6e7834677dd017f4e7bb
Saving successful migration to network...
... 0xdc6041f8003d27b2caef37d921dd21d1b5be88ca672e94c6a0ec2c86fa3e246b
Saving artifacts...
Running migration: 2_deploy_contracts.js
Deploying ConvertLib...
... 0x251fe34333ceb9bacdf6dd8273b9c70a849bc4422869dda60187a39321fe5828
ConvertLib: 0xd09d860b99174cee7cc7a63e284066235bf01924
Linking ConvertLib to MetaCoin
Deploying MetaCoin...
... 0x02c392cfac6f6c9cd69da824fddddbf6d65e5db1b43221d7a62b4806dcf1ee07
MetaCoin: 0x8e72de56522f6c88ed6e744018eab54379e9261b
Saving successful migration to network...
... 0xe45785b07b32d34e048136d4d66ff8bb06c93ff7c0d373f17e1947267b9a3a3a
Saving artifacts...

注意同时在ganache-cli端也会有信息输出。

7) 运行合约

$ npm run dev

输出内容如下:

> truffle-init-webpack@0.0.2 dev F:\Workspace\test\demo
> webpack-dev-server i 「wds」: Project is running at http://localhost:8080/

8) 浏览器访问

效果:

情形1> metamask没有登录

情形2> metamask使用ganache-cli生成的账户登录

1) 使用12个单词短语恢复账号

2) 将网络切换到"localhost:8545"

3) 重新访问,效果如下:

4) 导入其余的9个账户

通过9次"Create Account"即可将其余的9个账户一同导入


使用ganache

ganache和ganache-cli使用方法相同,且默认每次启动都使用相同的账户

另外 还需要 新建rpc,点击"Custom RPC"



切换网络为localhost:7545

参考:

win10 solidity开发环境搭建的更多相关文章

  1. (一)Hololens Unity 开发环境搭建(Mac BOOTCAMP WIN10)

    (一)Hololens Unity 开发环境搭建(Mac BOOTCAMP WIN10) 系统要求 64位 Windows 10 除了家庭版的 都支持 ~ 64位CPU CPU至少是四核心以上~ 至少 ...

  2. win10 + VS2010 + OpenCV2.4.10重编译OpenCV开发环境搭建

    win10 + VS2010 + OpenCV2.4.10重编译OpenCV开发环境搭建 重编译的优点:能够调试的时候看OpenCV的源码. 重编译要得到的东西:Debug版本号和Release版本号 ...

  3. win10子系统linux.ubuntu开发环境搭建

    移步新博客... win10子系统linux.ubuntu开发环境搭建

  4. 以太仿DApp开发环境搭建

    在网上找了些以太仿的资料,是node.js写的,之前也了解过node.js,正好也可以用上.本篇主要学习以太仿DApp开发环境搭建. 一.安装 DApp 开发环境 1.1安装 Node.js 首先下载 ...

  5. Windows 10 IoT Serials 1 - 针对Minnow Board MAX的Windows 10 IoT开发环境搭建

    目前,微软针对Windows IoT计划支持的硬件包括树莓派2,Minnow Board MAX 和Galileo (Gen 1和Gen 2).其中,Galileo (Gen 1和Gen 2)运行的是 ...

  6. 智能合约开发环境搭建及Hello World合约

    如果你对于以太坊智能合约开发还没有概念(本文会假设你已经知道这些概念),建议先阅读入门篇. 就先学习任何编程语言一样,入门的第一个程序都是Hello World.今天我们来一步一步从搭建以太坊智能合约 ...

  7. 勤拂拭软件 java web 开发教程(1) - 开发环境搭建

    勤拂拭软件系列教程 之 Java Web开发之旅(1) Java Web开发环境搭建 1 前言 工作过程中,遇到不少朋友想要学习jsp开发,然而第一步都迈不出,连一个基本的环境都没有,试问,如何能够继 ...

  8. 勤拂拭软件Android开发之旅(1) 之 Android 开发环境搭建

    勤拂拭软件工作室原创出品,欢迎转载,欢迎交流. 转载请注明原文:http://www.cnblogs.com/wangleiblog/p/6019063.html 勤拂拭软件Android开发之旅目录 ...

  9. 【STM32H7教程】第2章 STM32H7的开发环境搭建

    完整教程下载地址:http://forum.armfly.com/forum.php?mod=viewthread&tid=86980 第2章    STM32H7的开发环境搭建 本章主要为大 ...

随机推荐

  1. 洛谷题解 P1315 【观光公交】

    这道题很多人都用的模拟(或者暴力),今天我就写一个"标准"的贪心发给大家.(我这段代码差点超时···也差点超内存···) 主要思路:通过贪心求得最小值即可,把加速器用到乘客最多的两 ...

  2. 编译原理子cygwin的使用

    目的:熟悉cygwin环境的使用,学习使用lex写简单的词法分析程序,会在cygwin环境下使用flex调试lex写的程序 内容:使用cygwin下的flex工具将exam1.l和exam2.l编译并 ...

  3. socket网络编程-----I/O复用之poll函数

    #include <stdio.h> #include <stdlib.h> #include <sys/types.h> #include <sys/soc ...

  4. 3--Postman--变量(environment&global)

    (1) Environment clear an environment variable: pm.environment.unset("variable_key")--recom ...

  5. 【图解】Hive文件存储格式

    摘自:https://blog.csdn.net/xueyao0201/article/details/79103973 引申阅读原理篇: 大数据:Hive - ORC 文件存储格式 大数据:Parq ...

  6. 自动保存python一个项目的需求文件

    # 保存python3环境下安装的所有模块 $ pip3 freeze > requirements.txt # 保存当前项目中所依赖的模块 $ pipreqs ./ 依赖模块保存在:requi ...

  7. 利用 SPICE 分析理解心电图前端中的右腿驱动

      [导读] 心电图(ECG)学是一门将心脏离子去极(ionic depolarization) 后转换为分析用可测量电信号的科学.模拟电子接口到电极/患者设计中最为常见的难题之一便是优化右腿驱动 ( ...

  8. 文档资源搜索小工具 - 支持PDF,DOC,PPT,XLS

    最近做了一个文档搜索小工具,当然不是网盘搜索工具,这个工具支持四种文件格式搜索(pdf,doc,ppt,xls),你只需要在搜索框中输入你想要搜索资源的关键词,点击搜索按钮即可获取相关资源,点击下载按 ...

  9. leetcode 刷题(3)--- 无重复字符的最长子串

    给定一个字符串,找出不含有重复字符的最长子串的长度. 示例 1: 输入: "abcabcbb" 输出: 3 解释: 无重复字符的最长子串是 "abc",其长度为 ...

  10. vs code 操作Git

    首次从Git拉取项目:Ctrl+Shift+p 选择Git 克隆 拉取成功后 Ctrl+波浪号进入控制台选择终端 使用npm install下载依赖 到此就从Git拉取成功了: 如果提示npm错误,有 ...