区块链部署多种soldlity语言智能合约常见的问题

本文针对《区块链技术指南》一书中的实践操作问题进行了总结,并提供了详细的解决方案,包括配置环境、解决进程通信接口问题、部署Remix及处理Webpack配置错误等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在阅读<区块链技术指南>一书中,按照教程操作遇到些障碍,从网上学习一些其它一些区块链教程中也出现一些问题,现归纳如下

有点乱

1 bitcoin-testnet-box配置
要用ubuntu16.04的系统,更新一下yum,直接从官方下载docker,然后用daocloud的加速器地址再下载


2 geth.ipc进程通信接口

geth attach \\.\pipe\geth.ipc



3 trufflemodule未定义解决方案
把truffle.js删除,只需保留truffle-config.js文件




4 web3provider启动testnet连接IPC接口
geth --networkid 123456 --rpc --rpcaddr="0.0.0.0" --rpccorsdomain "*" --nodiscover 


geth --identity "PICCetherum" --rpc --rpccorsdomain "*" --datadir "%cd%\chain"   --networkid 123456 console


geth --datadir "./" \\.\pipe\geth.ipc


geth --datadir "./" --networkid 123456 --rpc --rpcaddr="0.0.0.0" --rpccorsdomain "*"(最终版)之后用geth attach连接到testnet呼出控制台,geth account new创建新帐户,把C盘keystore文件夹下
的账户文件复制到你想移动到的另外的keystore文件夹下,之后可以显示该账户信息




geth -rpc -rpcport "8078"  –rpccorsdomain ‘*’ --datadir="H:\区块链\chain"  -port 30309 -nodiscover -rpcapi'db,eth,net,web3,debug' -networkid 1006 console
复制编译好的web3deploy代码到控制台,需要miner.start()才会被正式写入合约.


mist


rating.setRating.sendTransaction(1,3,{from:eth.accounts[0]})


rating.setRating.sendTransaction(1,5,{from:eth.accounts[0]})




写入交易到合约时需要miner.start(),指令矿工挖矿.之后数组数据才会更改并输入对应数组的一个对应元素就显示.






5 webpack-dev-server配置出错
把文件夹例如browser-solidity下的package.json的"startDev":改成"webpack-dev-server --no-inline"或其它参数




6 本地部署remix
基本的安装步骤:


git clone https://github.com/ethereum/browser-solidity 
cd browser-solidity 
npm install 
npm run prepublish//这步可以跳过


期间需要安装web3pack-dev-server,web3pack,web3back-cli等
启动命令:


npm start 






7 不能连上web3provider的问题
不能用https协议,要用http协议,http://remix.ethereum.org/#optimize=false&version=soljson-v0.4.23+commit.124ca40d.js,用这个网址






解决can't resolve src error in module not found.需要完整安装webpack
https://blog.youkuaiyun.com/qq_39207948/article/details/79436644


npm install --save-dev webpack
npm install --save-dev webpack-cli
npm install --global webpack
npm install --global webpack-cli安装好4个模块


package.json中加入
"scripts":{
"dev":"webpack --mode development",
"build":"webpack --mode production"
},


webpack-dev-server 设置成--no-inline






8 下载go-ethereum的问题
sudo apt-get install ethereum 多试几次就好


看不懂或者还有其它疑问的留言,有其它合作的也可以.








评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值