Hyperledger fabric INVOKE\u CHAINCODE失败:没有这样的文件或目录

Hyperledger fabric INVOKE\u CHAINCODE失败:没有这样的文件或目录,hyperledger-fabric,Hyperledger Fabric,当我试图使用InvokeChainCodeAPI调用其他链码数据时,系统返回err,表示找不到该链码文件。 这是我的命令 peer chaincode invoke -o orderer.trace.com:7050 -C mychannel -n sellcc --tls true --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/trace.com/orderers/

当我试图使用InvokeChainCodeAPI调用其他链码数据时,系统返回err,表示找不到该链码文件。 这是我的命令

peer chaincode invoke -o orderer.trace.com:7050 -C mychannel -n sellcc --tls true --cafile /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/ordererOrganizations/trace.com/orderers/orderer.trace.com/msp/tlscacerts/tlsca.trace.com-cert.pem --peerAddresses peer0.sell.trace.com:7051 --tlsRootCertFiles /opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/sell.trace.com/peers/peer0.sell.trace.com/tls/ca.crt -c '{"Args":["gethistory","s-001"]}'
和错误消息

Error: endorsement failure during invoke. response: status:500 message:"InvokeChaincode error ......INVOKE_CHAINCODE failed: transaction ID: 71993ee260225d1d4f9a5d7391294a730321e62aebc7d5c1e543e40f2f30b0d2: cannot retrieve package for chaincode dealercc/1.0, error open /var/hyperledger/production/chaincodes/dealercc.1.0: no such file or directory"
对不起,我是一个非常新的织物,我试图搜索,但似乎没有这样的问题。我想这可能是由配置或东西,但我不知道如何解决它。 提前谢谢

补充: 关于链码调用的我的代码

text := t.getvalue(stub, args)
if text.Status != shim.OK {
    return shim.Error("getvalue error ......")
}
var result string
var fromID string

var sellItem SellInfo
json.Unmarshal(text.Payload, &sellItem)
fromID = sellItem.FromId
result += fmt.Sprintf("Sell:%s, ID:%s, FromID:%s <--- ", sellItem.Name, sellItem.Id, sellItem.FromId)

myArgs := [][]byte{[]byte("getvalue"), []byte(fromID)}
response := stub.InvokeChaincode("dealercc", myArgs, "mychannel") 
if response.Status != shim.OK {
    return shim.Error("InvokeChaincode error ......" + string(response.Payload))
}
var dealerItem DealerInfo
json.Unmarshal(response.Payload, &dealerItem)
fromID = dealerItem.FromId
result += fmt.Sprintf("Dealer:%s, ID:%s, FromID:%s <--- ", dealerItem.Name, dealerItem.Id, dealerItem.FromId)

myArgs = [][]byte{[]byte("getvalue"), []byte(fromID)}
response = stub.InvokeChaincode("hennrycc", myArgs, "mychannel") 
if response.Status != shim.OK {
    return shim.Error("InvokeChaincode error ......")
}
var hennryItem HennryInfo
json.Unmarshal(response.Payload, &hennryItem)
result += fmt.Sprintf("Hennry:%s, scale:%s, breed:%s 。 ", hennryItem.Name, hennryItem.Quality, hennryItem.Breed)

//jsonText, error := json.Marshal(myList)
//if error != nil {
//  return shim.Error("json.Marshal(myList) fail...")
//}
return shim.Success([]byte(result))
text:=t.getvalue(存根,参数)
如果文本为.Status!=好的{
返回shim.Error(“getvalue错误……”)
}
变量结果字符串
var-fromID字符串
var sellItem SellInfo
Unmarshal(text.Payload和sellItem)
fromID=sellItem.fromID

结果+=fmt.Sprintf("销售:%s,ID:%s,FromID:%s现在我知道如何解决它。所有链码都应该通过使用“对等链码安装-n org1cc/org2cc”在使用InvokeChaincode API的对等方上安装。

您是否安装并实例化了链码?是的,以及其他操作,如setvalue、getvalue工作正常请检查您是否调用了正确的链码,我可以看出您正在尝试调用sellcc,但在日志中获取dealercc。这是OK,因为这是invokechaincode API应该做的,调用来自其他CCC的数据。您实现了链码到链码的调用了吗?