#
http://www.360doc.com/content/18/1014/17/16619343_794677023.shtml
https://blog.csdn.net/luoye4321/article/details/82531212
https://blog.csdn.net/weixin_34055787/article/details/89733910
版權(quán)聲明:本文為博主原創(chuàng)文章,遵循 CC 4.0 BY-SA 版權(quán)協(xié)議,轉(zhuǎn)載請附上原文出處鏈接和本聲明。
本文鏈接:https://blog.csdn.net/yezishuang/article/details/91489354
1.Visual Studio 2015 專業(yè)版和企業(yè)版下載
https://www.cnblogs.com/bwlluck/p/5514424.html
https://www.cnblogs.com/wgscd/p/4671374.html
2.Visual Studio 2013
https://www.cnblogs.com/abeam/p/6781006.html
3.Visual Studio 2017
https://www.cnblogs.com/jian-pan/p/6942635.html
Microsoft Visual Studio Enterprise 2017 企業(yè)版
KEY:NJVYC-BMHX2-G77MM-4XJMR-6Q8QF
Microsoft Visual Studio Professional 2017 專業(yè)版
KEY:KBJFW-NXHK6-W4WJM-CRMQB-G3CDH
4.Visual Studio 2019
https://www.cnblogs.com/zengxiangzhan/p/vs2015.html
https://visualstudio.microsoft.com/zh-hans/downloads/ (下載地址)
Visual Studio 2019 Enterprise
BF8Y8-GN2QH-T84XB-QVY3B-RC4DF
Visual Studio 2019 Professional
NYWVH-HT4XC-R2WYW-9Y3CM-X4V3Y
https://blog.csdn.net/qq_27317475/article/details/80894593
以前的genesis.json的文件差不多是這樣的:
{
"config": {
"chainId": 10,
"homesteadBlock": 0,
"eip155Block": 0,
"eip158Block": 0
},
"alloc" : {},
"coinbase" : "0x0000000000000000000000000000000000000000",
"difficulty" : "0x00000002",
"extraData" : "",
"gasLimit" : "0x2fefd8",
"nonce" : "0x0000000000000042",
"mixhash" : "0x0000000000000000000000000000000000000000000000000000000000000000",
"parentHash" : "0x0000000000000000000000000000000000000000000000000000000000000000",
"timestamp" : "0x00"
}
用這個創(chuàng)世塊的描述文件初始化時,出現(xiàn)錯誤:
Fatal: Failed to write genesis block: unsupported fork ordering: eip150Block not enabled, but eip155Block enabled at 0
百度吧,沒有一個解決辦法。
后來用Puppeth命令創(chuàng)建json文件,并做了修改,如下所示:
{
"config": {
"chainId": 666,
"homesteadBlock": 0,
"eip150Block": 0,
"eip150Hash": "0x0000000000000000000000000000000000000000000000000000000000000000",
"eip155Block": 0,
"eip158Block": 0,
"byzantiumBlock": 0,
"constantinopleBlock": 0,
"petersburgBlock": 0,
"istanbulBlock": 0,
"ethash": {}
},
"nonce": "0x0",
"timestamp": "0x5ddf8f3e",
"extraData": "0x0000000000000000000000000000000000000000000000000000000000000000",
"gasLimit": "0x47b760",
"difficulty": "0x00002",
"mixHash": "0x0000000000000000000000000000000000000000000000000000000000000000",
"coinbase": "0x0000000000000000000000000000000000000000",
"alloc": { }
},
"number": "0x0",
"gasUsed": "0x0",
"parentHash": "0x0000000000000000000000000000000000000000000000000000000000000000"
}
初始化:
geth --identity "MyEth" --rpc --rpcport "8545" --rpccorsdomain "*" --datadir gethdata --port "30303" --nodiscover --rpcapi "db,eth,net,personal,web3" --networkid 1999 init genesis.json
控制臺:
geth --identity "MyEth" --rpc --rpcport "8545" --rpccorsdomain "*" --datadir gethdata --port "30303" --nodiscover --rpcapi "db,eth,net,personal,web3" --networkid 1999 --dev.period 1 console
建立用戶:
>personal.newAccount();
挖礦:
miner.start();
終于順利挖到了人生第一桶金。
第一步 安裝geth
下載地址:https://ethereum.github.io/go-ethereum/downloads/
點擊安裝勾選development tools

第二步 創(chuàng)建您的帳戶
在當前文件夾下創(chuàng)建node1文件夾
創(chuàng)建一個賬戶(也稱為錢包)
Devnet $ geth --datadir node1/ account new
Your new account is locked with a password. Please give a password. Do not forget this password.
Passphrase: 輸入你的密碼
Repeat passphrase: 確認你的密碼
Address: {08a58f09194e403d02a1928a7bf78646cfc260b0}
第三步 geth命令創(chuàng)建您的Genesis文件
生成的文件是用于初始化區(qū)塊鏈的文件。第一個塊叫做創(chuàng)世塊,是根據(jù)genesis.json文件中的參數(shù)生成的。
Geth安裝后目錄下有很多可執(zhí)行文件如puppeth或bootnode。你可以在Geth github上找到完整的列表。
Puppeth可以創(chuàng)建創(chuàng)世區(qū)塊的json文件。
開始使用Puppeth:
1、win鍵 + r 進入cmd命令行,進入到安裝geth的文件夾執(zhí)行 puppeth 然后順序執(zhí)行下面操作
2、Please specify a network name to administer (no spaces, please)
> devnet
(這里隨便填寫一個網(wǎng)絡(luò)管理名稱即可,如有需要后面可以通過--network重新設(shè)置)
What would you like to do? (default = stats)
1. Show network stats
2. Configure new genesis
3. Track new remote server
4. Deploy network components
> 2
(這里選擇2,回車,配置新的創(chuàng)世區(qū)塊)
3、Which consensus engine to use? (default = clique)
1. Ethash - proof-of-work
2. Clique - proof-of-authorit
> 1
(這里選擇pow共識機制)
4、Which accounts should be pre-funded? (advisable at least one)
> 0x1234567890123456789012345678901234567890
(這個是設(shè)置預(yù)分配以太坊的賬戶,建議設(shè)置一個有私鑰的地址可以后面測試使用,設(shè)置好后再按一次回車)
5、Specify your chain/network ID if you want an explicit one (default = random)
> 666
(這里就是鏈的chainId,可以隨意輸入也可以不輸直接回車默認隨機數(shù)字)
6、What would you like to do? (default = stats)
- Show network stats
- Manage existing genesis
- Track new remote server
- Deploy network components
> 2
(管理已擁有的創(chuàng)世塊)
7、 1. Modify existing fork rules
2. Export genesis configuration
3. Remove genesis configuration
> 2
(選擇導(dǎo)出創(chuàng)世配置)
8、Which file to save the genesis into? (default = devnet.json)
> ./genesis.json
(導(dǎo)出的路徑及文件名)
OK,到這里創(chuàng)世json文件創(chuàng)建完成了
第四步 geth命令初始化節(jié)點
現(xiàn)在我們有了這個genesis.json文件,可以初始化創(chuàng)世塊了!
進入到geth安裝文件夾下執(zhí)行
geth --datadir node1/ init genesis.json
第五步 bootnode命令操作
bootnode唯一的目的是幫助節(jié)點發(fā)現(xiàn)彼此(記住,以太坊區(qū)塊鏈是一個對等網(wǎng)絡(luò))
初始化 bootnode
bootnode -genkey boot.Key
啟動bootnode服務(wù)
bootnode -nodekey boot.key -addr:30310
隨意使用任何您喜歡的端口,但請避免使用主流端口(例如HTTP)。30303用于公共以太坊網(wǎng)絡(luò)。
第六步 geth命令啟動節(jié)點
geth --datadir .\node1\ --syncmode 'full' --port 30311 --rpc --rpcaddr '127.0.0.1' --rpcport 8501 --rpcapi 'personal,db,eth,net,web3,txpool,miner' --bootnodes 'enode://ca88962dbcc8eb0c7587789866f21db68cdf32ad1ea890fe0d9f8fe010f7e9afe2e6a88d5c9d418be61a10b8a31b1e7c55213bb426dab91596ae36bd7d559333@127.0.0.1:30310' --networkid 666
參數(shù)解釋:
--syncmode 'full' 有助于防止錯誤丟棄錯誤的傳播塊。
--port 是node1的端口
--rpcapi 允許RPC調(diào)用的模塊
--bootnodes 要連接的bootnode
--networkId genesis.json文件中的chainId
第七步 與您的節(jié)點進行交互
通過RPC方式
$ cd devnet
devnet$ geth attach 'http://localhost:8501'
Welcome to the Geth JavaScript console!
instance: Geth/v1.7.3-stable-4bb3c89d/linux-amd64/go1.9
coinbase: 0x87366ef81db496edd0ea2055ca605e8686eec1e6
at block: 945 (Sat, 10 Feb 2018 21:16:14 CET)
modules: eth:1.0 miner:1.0 net:1.0 personal:1.0 rpc:1.0 txpool:1.0 web3:1.0
使用Geth控制臺
>net.version
"1515"
> eth.blockNumber
1910
> eth.coinbase
"0x87366ef81db496edd0ea2055ca605e8686eec1e6"
> eth.sendTransaction({'from':eth.coinbase, 'to':'0x08a58f09194e403d02a1928a7bf78646cfc260b0', 'value':web3.toWei(3, 'ether')})
"0x299a99baa1b39bdee5f02e3c660e19e744f81c2e886b5fc24aa83f92fe100d3f"
>eth.getTransactionReceipt("0x299a99baa1b39bdee5f02e3c660e19e744f81c2e886b5fc24aa83f92fe100d3f")
{
blockHash: "0x212fb593980bd42fcaf3f6d1e6db2dd86d3764df8cac2d90408f481ae7830de8",
blockNumber: 2079,
contractAddress: null,
cumulativeGasUsed: 21000,
from: "0x87366ef81db496edd0ea2055ca605e8686eec1e6",
gasUsed: 21000,
logs: [],
logsBloom: "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
status: "0x1",
to: "0x08a58f09194e403d02a1928a7bf78646cfc260b0",
transactionHash: "0x299a99baa1b39bdee5f02e3c660e19e744f81c2e886b5fc24aa83f92fe100d3f",
transactionIndex: 0
}
> exit
(退出)
來自:https://www.haowenbo.com/articles/2019/07/24/1563963176492.html
有了npm 我們能夠簡單的一段代碼就下載我們需要的包,但是包是不斷更新的,
所以我們要關(guān)注包的版本信息;
現(xiàn)在,假設(shè)我們需要 jquery ,但是jquery現(xiàn)在有很多版本,我們?nèi)绾瓮ㄟ^npm查看呢?
要知道,現(xiàn)在的jquery包在npm服務(wù)器的上,我們使用下面的命令查看:
第一種方式:使用npm view jquery versions
這種方式可以查看npm服務(wù)器上所有的jquery版本信息;
第二種方式:使用npm view jquery version
這種方式只能查看jquery的最新的版本是哪一個;
第三種方式:使用npm info jquery
這種方式和第一種類似,也可以查看jquery所有的版本,
但是能查出更多的關(guān)于jquery的信息;
假設(shè)現(xiàn)在我們已經(jīng)成功下載了jquery,過了一段時間,我忘記了下載的jquery的版本信息,
這個時候,我們就需要查看本地下載的jquery版本信息,怎么做呢?
第一種方式:npm ls jquery 即可(查看本地安裝的jQuery),下面我的本地沒有安裝jquery,
所以返回empty的結(jié)果;
第二種方式:npm ls jquery -g (查看全局安裝的jquery)
總結(jié):上面我們了解了如何通過npm 來查看我們需要的包的版本信息,
既可以查看遠端npm 服務(wù)器上的,也可以查看本地的;
————————————————
版權(quán)聲明:本文為CSDN博主「cvper」的原創(chuàng)文章,遵循 CC 4.0 BY-SA 版權(quán)協(xié)議,轉(zhuǎn)載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/cvper/article/details/79543262
1.在你想更改的目錄下新建兩個文件夾:node_global 和 node_cache
2.啟動cmd依次執(zhí)行以下兩條命令
npm config set prefix "XXX\XXX\node_global"
npm config set cache "XXX\XXX\node_cache"
路徑均為絕對路徑
3.更改環(huán)境變量,計算機右擊 --> 屬性 --> 高級系統(tǒng)設(shè)置 --> 環(huán)境變量
在下邊的系統(tǒng)變量里新建一條記錄,變量名為NODE_PATH 值為XXX\XXX\node_global\mode_modules
在上邊的環(huán)境變量,更改PATH的值為XXX\XXX\node_global\
(路徑為剛才第二步中node_global文件夾的絕對路徑)
作者:招貓逗狗追兔子
鏈接:https://www.jianshu.com/p/70ac7d1a3300
來源:簡書
著作權(quán)歸作者所有。商業(yè)轉(zhuǎn)載請聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請注明出處。