2017-02-27 86 views
0

我使用下面提到的命令行編譯proto文件。Java protoc編譯問題

protoc -I ./ --python_out=. --grpc_out=. --plugin=protoc-gen-grpc=`which grpc_python_plugin` ./test.proto 

上面的命令我發佈的是生成基於python的代碼,它工作正常。

現在相同的命令我試圖發出基於Java的代碼,但得到錯誤。

protoc -I ./ --java_out=. --grpc_out=. --plugin=protoc-gen-grpc=`which grpc_java_plugin` ./test.proto 

我看着我的插件目錄,發現下面的插件已安裝,但沒有安裝Java插件。

grpc_csharp_plugin 
grpc_cpp_plugin 
grpc_objective_c_plugin 
grpc_node_plugin 
grpc_python_plugin 
grpc_ruby_plugin 

我怎樣才能找到Java插件?

+0

沒有java插件,它被內置到protoc中使用--java_out並通過發佈protoc -I =。/ --java_out =來移除插件參數 –

+0

。 ./test.proto我能夠生成文件。 – Ammad

+0

@BruceMartin你能回答在答案領域。 – Ammad

回答

1

插件託管在Maven的中央:http://repo1.maven.org/maven2/io/grpc/protoc-gen-grpc-java/

雖然沒有一個Java的protobuf插件(它是內置到protoc),沒有爲GRPC生成的存根插件。通常這是默認爲Gradle插件爲您提供的,但您可以手動下載並使用該插件。目前,有Linux,OSX和Windows版本。