首页 > 解决方案 > protoc-gen-go:程序未找到或不可执行

问题描述

我正在尝试使用 go grpc 构建示例应用程序,但无法使用“protoc”生成代码

已使用以下命令安装了所需的库/go 包:

  1. 去获取 -u google.golang.org/grpc
  2. go get -u github.com/golang/protobuf/protoc-gen-go

也尝试过设置路径,但没有运气。

示例“原型”文件:

syntax = "proto3";

package greet;
option go_package="greetpb";

service GreetService{}

错误消息:“protoc-gen-go:程序未找到或不可执行--go_out:protoc-gen-go:插件失败,状态码为 1。”

标签: goprotocol-buffersgrpcprotoprotoc

解决方案


有两种方法可以安装 protobuf 编译器,如果你在 Ubuntu 上,你可以使用这个,

sudo apt install protobuf-compiler

然后当然有标准的方式,

go get -u github.com/golang/protobuf/{proto,protoc-gen-go}

在这里,它只是添加路径。假设您在安装 Go 时执行了此操作,

echo 'export GOPATH=$HOME/Go' >> $HOME/.bashrc
source $HOME/.bashrc

现在你可以扩展它,

echo 'export PATH=$PATH:$GOPATH/bin' >> $HOME/.bashrc
source $HOME/.bashrc

奇怪的protoc是不能展开~


推荐阅读