我在GRPC中从.proto文件生成存根时遇到了一些麻烦。这是.proto文件的样子
`syntax = "proto3";`
// The greeting service definition.
service Greeter {
// Sends a greeting
rpc SayHello (HelloRequest) returns (HelloReply) {}
}
// The request message containing the user's name.
message HelloRequest {
string name = 1;
}
// The response message containing the greetings
message HelloReply {
string message = 1;
}
该文件确实生成了protocal缓冲区代码,但我没有从中获取任何服务存根。 I.E.我不能使用阻塞存根。
我尝试使用“java_multiple_files = true”修复程序,但这只是将生成的proto文件拆分为几个单独的proto文件。
我目前正在使用以下命令提示行来生成我的proto文件。
protoc --proto_path= src\proto\protoFile.proto --java_out=src\sourceThings
如果您有任何想法或需要更多信息,请与我们联系。
谢谢! -DJ
答案 0 :(得分:6)
要获取gRPC存根,您需要告诉protoc
使用gRPC插件,例如:
protoc --java_out=src/sourceThings --grpc-java_out=src/sourceThings
您需要确保程序protoc-gen-grpc-java
在PATH中,或者您需要使用以下标志指定其位置:
--plugin=protoc-gen-grpc-java=path/to/protoc-gen-grpc-java