问题描述
我使用协议生成了此协议文件。 protoc -I = C:\ proto --cpp_out = C:\ proto C:\ proto \ test.proto
Syntax = "proto3";
option java_package = "ex.grpc";
package mathtest;
// Defines the service
service MathTest {
// Function invoked to send the request
rpc sendRequest (MathRequest) returns (MathReply) {}
}
// The request message containing requested numbers
message MathRequest {
int32 a = 1;
int32 b = 2;
}
// The response message containing response
message MathReply {
int32 result = 1;
}
virtual void sendRequest(::PROTOBUF_NAMESPACE_ID::RpcController* controller,const ::mathtest::MathRequest* request,::mathtest::MathReply* response,::google::protobuf::Closure* done);
当我基于的示例覆盖此功能时,如下所示:
/Status sendRequest(
ServerContext* context,const MathRequest* request,MathReply* reply
) override {
解决方法
更新: 发现需要运行此命令来生成grpc.pb标头:
协议-IC:\ proto --grpc_out = C:\ Users \ alon.h \ grpc.build --plugin = protoc-gen-grpc = C:\ proto \ grpc_cpp_plugin.exe C:\ proto \ test。原始
grpc_cpp_plugin.exe是必需的,可以在grpc git存储库中找到