簡単な Java チャット プログラムを作成する gRPC から始めます。
protc --version は libprotoc 3.5.1 を出力します
-proto ファイル:
syntax = "proto3";
option java_multiple_files = true;
option java_package = "grpc";
// whihout this Option i get no service
option java_generic_services = true;
option java_outer_classname = "ChatProto";
option objc_class_prefix = "HLW";
package chat;
message ClientPost {
string name = 1;
string value = 2;
}
message ServerReply {
ClientPost back = 1;
}
// The service definition.
service Verbindung {
rpc ChatService (stream ClientPost) returns (stream ServerReply);
}
// ファイル終了
オプション java_generic_services を設定する必要があるのはなぜですか?
class ChatImpl extends grpc.Verbindung { @Override public void chatService(RpcController controller, ClientPost request, RpcCallback done) { // なぜこの種のサービスを取得するのですか? } }
// 2. なぜ他のクラス名を取得するのですか? 黙れ VerbindungImplBase
期待される機能
public void sayHello(HelloRequest req, StreamObserver<HelloReply> responseObserver) { }
- この種の期待されるサービス機能を取得するにはどうすればよいですか?
プロトコル コンパイラが間違っているか、インストールが間違っているか、パーツが不足している可能性があります。