Hyperledger fabric Hyperledger结构函数重命名导致错误

Hyperledger fabric Hyperledger结构函数重命名导致错误,hyperledger-fabric,blockchain,chaincode,Hyperledger Fabric,Blockchain,Chaincode,我正在玩Hyperledger结构中的fabcar示例。在那里,在链码中,我将queryalcars函数名更改为queryalproducts,然后在正在使用的query.js文件中更改该方法名。但由于不存在函数,我得到以下错误。我按queryalcars函数的名称检查了所有位置,但无法找出问题所在。这个问题的根本原因是什么 2019-06-23T04:14:37.101Z - warn: [Query]: evaluate: Query ID "[object Object]" of peer

我正在玩Hyperledger结构中的fabcar示例。在那里,在链码中,我将queryalcars函数名更改为queryalproducts,然后在正在使用的query.js文件中更改该方法名。但由于不存在函数,我得到以下错误。我按queryalcars函数的名称检查了所有位置,但无法找出问题所在。这个问题的根本原因是什么

2019-06-23T04:14:37.101Z - warn: [Query]: evaluate: Query ID "[object Object]" of peer "peer0.ibo.bc4scm.de" failed: message=transaction returned with failure: Error: You've asked to invoke a function that does not exist: queryAllProducts, stack=Error: transaction returned with failure: Error: You've asked to invoke a function that does not exist: queryAllProducts
at self._endorserClient.processProposal (/home/malintha/Academic/3rd_Semester/DLT4PI/BCNetwork/BC4SCM/FrontEndCalls/node_modules/fabric-client/lib/Peer.js:140:36)
at Object.onReceiveStatus (/home/malintha/Academic/3rd_Semester/DLT4PI/BCNetwork/BC4SCM/FrontEndCalls/node_modules/grpc/src/client_interceptors.js:1207:9)
at InterceptingListener._callNext (/home/malintha/Academic/3rd_Semester/DLT4PI/BCNetwork/BC4SCM/FrontEndCalls/node_modules/grpc/src/client_interceptors.js:568:42)
at InterceptingListener.onReceiveStatus (/home/malintha/Academic/3rd_Semester/DLT4PI/BCNetwork/BC4SCM/FrontEndCalls/node_modules/grpc/src/client_interceptors.js:618:8)
at callback (/home/malintha/Academic/3rd_Semester/DLT4PI/BCNetwork/BC4SCM/FrontEndCalls/node_modules/grpc/src/client_interceptors.js:845:24), status=500, , url=grpc://localhost:7051, name=peer0.ibo.bc4scm.de, grpc.max_receive_message_length=-1, grpc.max_send_message_length=-1, grpc.keepalive_time_ms=120000, grpc.http2.min_time_between_pings_ms=120000, grpc.keepalive_timeout_ms=20000, grpc.http2.max_pings_without_data=0, grpc.keepalive_permit_without_calls=1, name=peer0.ibo.bc4scm.de, request-timeout=300000, isProposalResponse=true
Failed to evaluate transaction: Error: transaction returned with failure: Error: You've asked to invoke a function that does not exist: queryAllProducts

当您更改/编辑链码时,您必须再次安装并向对等方实例化它。 我建议请安装新版本的链码 您可以在链码安装部分的startfabric.sh脚本中找到该部分。 它看起来像这样

 peer chaincode install \
        -n fabcar \
        -v 1.0 \
        -p "$CC_SRC_PATH" \
    -l "$CC_RUNTIME_LANGUAGE"
为两个对等方更改它

或 您可以手动删除已安装在对等机中的旧链码