如何纠正错误:标志需要一个参数:'c'在-c?
将链码提交到 hyperledger Fabric 测试网络后,我使用以下命令来初始化链码。
peer chaincode invoke -o localhost:7050 --ordererTLSHostnameOverride orderer.example.com --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA -C testchannel -n property --peerAddresses localhost:7051 --tlsRootCertFiles $CORE_PEER_TLS_ROOTCERT_FILE_ORG1 --peerAddresses localhost:9051 --tlsRootCertFiles $CORE_PEER_TLS_ROOTCERT_FILE_ORG2 --isInit -c `{"Args":[]}`
然后我遇到了以下错误,
{Args:[]}: command not found
Error: flag needs an argument: 'c' in -c
如何纠正此错误。 提前致谢!
I used the following command to initialise the chaincode after committing it to the hyperledger fabric test network.
peer chaincode invoke -o localhost:7050 --ordererTLSHostnameOverride orderer.example.com --tls $CORE_PEER_TLS_ENABLED --cafile $ORDERER_CA -C testchannel -n property --peerAddresses localhost:7051 --tlsRootCertFiles $CORE_PEER_TLS_ROOTCERT_FILE_ORG1 --peerAddresses localhost:9051 --tlsRootCertFiles $CORE_PEER_TLS_ROOTCERT_FILE_ORG2 --isInit -c `{"Args":[]}`
Then I encountered with the following error,
{Args:[]}: command not found
Error: flag needs an argument: 'c' in -c
How can I rectify this error.
Thanks in advance!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我对此不确定,因为我通常不使用 --isInit 标志,但我相信如果使用它,您的合约中需要有一个 Init 函数来匹配该标志的期望,即它应该具有适合该标志的用途的方法签名期望找到。
我倾向于不使用该标志,而是调用自制的 Init 函数,如下所示。
看看这个链接 如果你还没有的话。
I'm not sure about this as I don't generally use the --isInit flag, but I believe that if it is used, you need to have an Init function in your contract to match the expectation of this flag i.e. it should have a method signature to suit what use of the flag expects to find.
I tend not to use the flag and instead, call a home grown Init function, as shown below.
Have a look at this link if you haven't already.