protoc gen go rpc:找不到程序或程序不可执行-从哪里获取protoc gen go rpc?

protoc gen go rpc:找不到程序或程序不可执行-从哪里获取protoc gen go rpc?,go,protocol-buffers,grpc,protoc,grpc-go,Go,Protocol Buffers,Grpc,Protoc,Grpc Go,我们使用的是protoc gen go v2(v2是google.golang.org/protobuf,v1是github.com/golang/protobuf) 当我们试图编译gRPC服务时,它告诉我们,插件不再受支持,我们应该使用--go-gRPC\u out: $ protoc --go_out=plugins=grpc:. *.proto --go_out: protoc-gen-go: plugins are not supported; use 'protoc --go-grpc

我们使用的是protoc gen go v2(v2是google.golang.org/protobuf,v1是github.com/golang/protobuf)

当我们试图编译gRPC服务时,它告诉我们,
插件
不再受支持,我们应该使用
--go-gRPC\u out

$ protoc --go_out=plugins=grpc:. *.proto
--go_out: protoc-gen-go: plugins are not supported; use 'protoc --go-grpc_out=...' to generate gRPC
当使用
--go-grpc\u out
时,它告诉我们需要
protoc gen go-rpc

$ protoc --go-rpc_out=. *.proto
protoc-gen-go-rpc: program not found or is not executable
Please specify a program using absolute path or make sure the program is available in your PATH system variable
您在哪里找到或如何安装protoc gen go rpc

更新:我们刚刚在Reddit上找到了这篇文章以获取更多信息

我不太清楚
protoc gen go v2
,因为我能看到的最新
protobuf
标签是
v1.4

下面是我们如何调用
protoc
为名为
crab
的服务生成源代码的示例,该服务没有外部依赖项(例如,没有外部协议文件导入)。唯一的二进制依赖项是
protoc gen go

protoc-I$(pwd)-I/home/isaev/go/src\
$(pwd)/crab/error\u codes.proto\
$(pwd)/crab/goproxy.proto\
$(pwd)/crab/crab.proto\
--go_out=plugins=grpc:/tmp/crab
嘿,是的。由于您使用的是“插件”,所以您仍然在使用旧版本的gen go协议