百度开源了 百度超级链 的核心 XuperChain ,所以能用 XuperChain
来在自己的电脑或服务器上部署区块链和区块链应用。
这里具体说明在部署了 XuperChain
的情况下,如何部署 Solidity 合约。
一 首先启动 XuperChain
,这里官网的教程已经很详细了
1. 环境部署 — XuperChain 官方文档 5.3 文档
二 根据官网教程创建合约账户,并给合约账户转账 (部署合约需要)
./bin/xchain-cli transfer --from TeyyPLpp9L7QAcxHangtcHTu7HUZ6iydY --to XC1111111111111111@xuper --amount 1000000000
这里的 TeyyPLpp9L7QAcxHangtcHTu7HUZ6iydY
在 xuperchain-5.4.0/output/data/keys
文件夹里的 address
文件,既用户地址信息
三 编译合约
编译合约可以指定输出目录
solc --bin --abi VoteTest_a.sol --output-dir binVote
这里编译后的 bin 和 abi 文件就会出现在 binVote 文件夹下
四 部署合约
部署合约可以输入初始化数据 (一些合约需要)
./bin/xchain-cli evm deploy --account XC1111111111111111@xuper --cname vote_12_9 --fee 5200000 ./solidity/binVote/vote.bin --abi ./solidity/binVote/vote.abi -a '{"_creator":"H4sIAAAAAAAAAHXBwRFCMQgFwHZ0JgfIAwLlhAT6L+Ef9Ki7L+AYL40jNsvmukdkq3lr5l3CoqHVu3Vy5exSqKAKhMViiKEuewk8KnzazuhO85wkpujLtMRDkVZQz0DwPlzR9zq4jAaP/qIPpj/6t/N+AO8tTQvGAAAA","_title":"test","_description":"testVote"}'
--account | 指定合约用户 (能部署合约) |
--cname | 说明部署合约后的名字 (各种 JDK 也是用它来调用) |
--fee | 说明部署费用 |
--abi | 指定 abi 文件 |
-a | 指定的参数 (json 格式) |
如果输出为

说明 XuperChain 没有启动,需要查看启动状态或重启
[root@iZbp14eggp7jy5nocign0yZ output]# bash control.sh start
/www/wwwroot/xchain/xuperchain-5.4.0/output/bin/xchain
/www/wwwroot/xchain/xuperchain-5.4.0/output/conf/env.yaml
start xchain. cmd:nohup /www/wwwroot/xchain/xuperchain-5.4.0/output/bin/xchain startup --conf /www/wwwroot/xchain/xuperchain-5.4.0/output/conf/env.yaml >/www/wwwroot/xchain/xuperchain-5.4.0/output/logs/nohup.out 2>&1 &
.start proc succ.
start finish.pid:12623
Done!
[root@iZbp14eggp7jy5nocign0yZ output]# bin/xchain-cli status -H 127.0.0.1:37101
{
"blockchains": [
{
"name": "xuper",
"ledger": {
"rootBlockid": "d93c260ea5639a55e1fcad3df494495efad5c65d46e846b6db3a9194a4212886",
"tipBlockid": "183e4bbbdb1eaf18bdc19ad6bde1d44192171accd0969fe7061779591c5d3098",
"trunkHeight": 852092
},
"utxo": {
"latestBlockid": "183e4bbbdb1eaf18bdc19ad6bde1d44192171accd0969fe7061779591c5d3098",
"lockKeyList": null,
"utxoTotal": "100000000852092000000",
"avgDelay": 0,
"unconfirmed": 0,
"maxBlockSize": 134217728,
"reservedContracts": [],
"forbiddenContract": {
"moduleName": "",
"contractName": "",
"methodName": "",
"args": {},
"resource_limits": null
},
"newAccountResourceAmount": 1000,
"irreversibleBlockHeight": 0,
"irreversibleSlideWindow": 0,
"gasPrice": {
"cpu_rate": 1000,
"mem_rate": 1000000,
"disk_rate": 1,
"xfee_rate": 1
}
},
"branchBlockid": [
"183e4bbbdb1eaf18bdc19ad6bde1d44192171accd0969fe7061779591c5d3098"
]
}
],
"peers": null,
"speeds": {}
}
正确输出为

Comments NOTHING