Windows10——Geth智能合约部署
1.编写智能合约
创建命名为 SimpleStorage.sol 的智能合约
pragma solidity >=0.4.16 <0.9.0;
contract SimpleStorage {
uint storedData;
function set(uint x) public {
storedData = x;
}
function get() public view returns (uint) {
return storedData;
}
}
2.安装solc
npm i -g solc
3.使用solc命令编译合约,获取ABI信息和字节码
--bin Binary of the contracts in hex.
--abi ABI of the contracts.
获取ABI信息
solcjs -abi SimpleStorage.sol
获取字节码
solcjs -bin SimpleStorage.sol
生成两个文件里面分别包含所对应信息
4.使用Geth
geth --datadir testNet --dev console 2>> test.log
参数说明
--dev
启用开发者网络(模式),开发者网络会使用PoA 共识,默认预分配一个开发者账户并且会自动开启挖矿。
--datadir
后面的参数是区块数据及密钥存放目录。第一次输入命令后,它会在当前目录下新建一个testNet 目录来存放数据。
console
进入控制台。
2>> test.log
表示把控制台日志输出到test.log 文件。
Windows PowerShell实时查看日志文件命令:
get-content .\test.log
5.准备账户
查看账户:
eth.accounts
解锁账号:
personal.unlockAccount("0x276e17f1be2ccc5ab3bc7eba52bd802956742f7b")
*密码为空直接回车
设为默认账号
eth.defaultAccount