2016-07-20 7 views
3

Ich habe Probleme beim Generieren von Stubs aus meiner .proto-Datei in GRPC. Hier ist, was die .proto Datei sieht aus wieProtokalische Puffer generieren keine Dienst-Stubs

`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; 
} 

Die Datei wird protocal Puffer-Code generieren, aber ich bin immer noch keine Service-Stubs aus ihm heraus. I.E. Ich kann keine blockierenden Stubs verwenden.

Ich habe versucht, den Fix "java_multiple_files = true" zu verwenden, aber dies teilt die generierte Proto-Datei nur in ein paar separate Proto-Dateien auf.

Ich verwende derzeit die folgende Befehlszeile, um meine Proto-Dateien zu generieren.

protoc --proto_path= src\proto\protoFile.proto --java_out=src\sourceThings 

Lassen Sie mich wissen, wenn Sie Ideen haben oder weitere Informationen benötigen.

Danke! -DJ

Antwort

3

Um gRPC Stubs zu erhalten, müssen Sie protoc sagen, das gRPC Plugin zu verwenden, wie:

protoc --java_out=src/sourceThings --grpc-java_out=src/sourceThings 

Sie werden dafür sorgen müssen, dass das Programm protoc-gen-grpc-java in Ihrer PATH ist, oder Sie ‚ll Notwendigkeit, seine Lage geben Sie eine Flagge mit wie:

--plugin=protoc-gen-grpc-java=path/to/protoc-gen-grpc-java 

See: https://github.com/grpc/grpc-java/tree/master/compiler

+0

Ausgezeichnet, danke Kenton. –

+0

Hey Kenton, schnelle Frage. Ich habe den folgenden Gradel-Import benutzt, um Protoc-Gen-Grpc-Java in mein Programm zu bringen "Kompiliergruppe: 'io.grpc', Name: 'protoc-gen-grpc-java', Version: '0.15.0'". Wenn ich jedoch meine Eingabeaufforderung ausführe, gibt das System den folgenden Fehler aus: "--grpc-java_out: protoc-gen-grpc-java: Das System kann die angegebene Datei nicht finden". Dies ist meine Eingabeaufforderung "protoc --java_out = src/sourceStuff --grpc-java_out = src/sourceStuff --proto_path = src \ proto \ biGuide.proto". Hast du eine Idee, was schief gehen könnte? –

+0

Der Einfachheit halber sind hier zwei Gyzaos, die meinen Gradle-Import und das Ergebnis der Befehlszeile anzeigen. https://gyazo.com/c5a7ae1cccf2ecd4c8dc25afec1f0ba2 || https://gyazo.com/3460a2bc4b7a3890bb488889e2f390bc –

Verwandte Themen