在使用以下命令docker container exec -it cli peer chaincode install -n mycontract p /opt/gopath/src/github.com/sacc -v 1.0 -l node
成功安装链码后,我尝试实例化一个链码,当我尝试使用此命令docker container exec -it cli peer chaincode instantiate -n mycontract -v 1.0 -o orderer.example.com:7050 -C mychannel -c '{"Args":["org.myproject.com:instantiate"]}' -P "AND('Org1MSP.member')" -l node
实例化链码时,我在同伴上收到这些错误消息日志
UTC [peer.chaincode.dev-peer0.org1.example.com-mycontract-1.0] func2->信息077错误:找不到模块'./../ledger-api/state.js'
UTC [peer.chaincode.dev-peer0.org1.example.com-mycontract-1.0] func2-> INFO 078,位于Function.Module._resolveFilename(module.js:548:15)
UTC [peer.chaincode.dev-peer0.org1.example.com-mycontract-1.0] func2-> INFO 079,位于Function.Module._load(module.js:475:25)
UTC [peer.chaincode.dev-peer0.org1.example.com-mycontract-1.0] func2-> INFO 07a位于Module.require(module.js:597:17)
UTC [peer.chaincode.dev-peer0.org1.example.com-mycontract-1.0] func2-> INFO 07b at require(internal / module.js:11:18)
UTC [peer.chaincode.dev-peer0.org1.example.com-mycontract-1.0] func2->对象处的INFO 07c。 (/usr/local/src/documentototal.js:17:15)
UTC [peer.chaincode.dev-peer0.org1.example.com-mycontract-1.0] func2-> INFO 07d位于Module._compile(module.js:653:30)
UTC [peer.chaincode.dev-peer0.org1.example.com-mycontract-1.0] func2-> INFO 07e位于Object.Module._extensions..js(module.js:664:10)
UTC [peer.chaincode.dev-peer0.org1.example.com-mycontract-1.0] func2-> INFO 07f位于Module.load(module.js:566:32)
UTC [peer.chaincode.dev-peer0.org1.example.com-mycontract-1.0] func2-> INFO 080在tryModuleLoad(module.js:506:12)
UTC [peer.chaincode.dev-peer0.org1.example.com-mycontract-1.0] func2-> INFO 081位于Function.Module._load(module.js:498:3)
是什么原因导致此错误?
答案 0 :(得分:0)
这是一个愚蠢的错误。当我们实例化一个链码时,我们正在为该特定链码创建一个docker映像,并带有特定的名称和版本。即使我们对其进行了更改,如果我们尝试使用相同的命令实例化该图像,也将始终使用该图像。因此,如果您在使用链码实例化时遇到类似的问题,我会让您运行docker image rmi $(docker image images dev-* -q)
,然后尝试再次实例化链码。希望这对其他人有帮助。