Hyperledger fabric 在Hyperledger Fabric 2.0文档中执行部署脚本后,链码未在测试网络上部署
我运行了脚本Hyperledger fabric 在Hyperledger Fabric 2.0文档中执行部署脚本后,链码未在测试网络上部署,hyperledger-fabric,hyperledger-chaincode,Hyperledger Fabric,Hyperledger Chaincode,我运行了脚本/network.sh deployCC,然后它无法在网络上部署它(Fabric 2.0),这是错误: deploying chaincode on channel 'mychannel' Vendoring Go dependencies ... ~/Desktop/Fabric/fabric-samples/chaincode/fabcar/go ~/Desktop/Fabric/fabric-samples/test-network go: unknown subcomma
/network.sh deployCC
,然后它无法在网络上部署它(Fabric 2.0),这是错误:
deploying chaincode on channel 'mychannel'
Vendoring Go dependencies ...
~/Desktop/Fabric/fabric-samples/chaincode/fabcar/go
~/Desktop/Fabric/fabric-samples/test-network
go: unknown subcommand "mod"
Run 'go help' for usage.
~/Desktop/Fabric/fabric-samples/test-network
Finished vendoring Go dependencies
Using organization 1
++ peer lifecycle chaincode package fabcar.tar.gz --path
../chaincode/fabcar/go/ --lang golang --label fabcar_1
++ res=1
++ set +x
Error: error getting chaincode bytes: listing deps for pacakge
../chaincode/fabcar/go/ failed: exit status 2
!!!!!!!!!!!!!!! Chaincode packaging on peer0.org1 has failed
!!!!!!!!!!!!!!!!
ERROR !!! Deploying chaincode failed
问题在于您安装的Go软件包。您安装了哪个版本? 安装最新Go的理想方法是从这里开始 如果您使用的ubuntu与apt安装不符 首先移除apt安装的go
$sudo apt get remove go
- 从站点下载linux的tar文件 450
- 执行命令$sudotar-C/usr/local-xzf
sudo apt get remove golang go
sudo apt get remove——自动删除golang go
sudo-apt-get-purge-golang-go
- 我同意,这看起来像是Go版本的问题。Fabric 2.0具有
在1.11之前,Go没有mod命令(我想)。因此,如果您安装了Go版本1.13,可能您没有删除旧版本,它仍然指向Go的旧版本
做一个
对等版本
在运行./network.sh deployCC命令的同一终端中,检查正在使用的Golang版本。如果您确实看到1.10正在使用,那么您需要升级Golang
请参阅的安装说明
并遵循旧版本的卸载步骤和新版本的安装步骤,同时确保您拥有上一个答案所建议的:上一个go lang版本会导致此问题 因此,首先删除上一个go:(建议答案不会删除go,所以我在这里添加了它)
下载最新的go并将go/bin路径添加到环境变量我从网站本身下载了go,并遵循了他们文档中的过程,这与您上面提到的过程类似。Go版本是1.13.8,我已经下载了1.10.x,现在正在使用。我不能使用新的1.13.8