当前位置: 首页 > 知识库问答 >
问题:

“protoc gen go grpc:程序未找到或不可执行”,尽管付出了所有努力

施旭东
2023-03-14

我正试图从这个项目中运行makefile命令'gen'https://github.com/penthaapatel/grpcblog.命令是:protoc--go\u out=--go\u opt=路径=source\u relative--go-grpc\u out=--go-grpc\u opt=路径=源\相对博客/博客。proto但是我得到一个错误:

protoc-gen-go-grpc: program not found or is not executable
--go-grpc_out: protoc-gen-go-grpc: Plugin failed with status code 1.
make: *** [/home/deckard/go/src/grpcblog/Makefile:2: gen] Error 1

我使用Ubuntu 20.04?Golang-1.13.8,其中$GOROOT=/usr/lib/go-1.13和$GOPATH=/home/deckard/go($home是/home/deckard)。Protoc是libprotoc v.3.6.1 。我安装protobuf编译器时使用了:

sudo apt install protobuf-compiler

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

有一个文件夹/home/deckard/go/src/github.com/golang/protobuf/home/deckard/go/src/google.golang.org/protobuf,其中包含/home/deckard/go/src/google.golang.org/protobuf,我想,我需要的一切。我的bashrc配置(尝试了一些方法,所以事情相互重叠):

export GOROOT=/usr/lib/go-1.13
export GOPATH=$HOME/go
export GOBIN=$GOPATH/bin
export PATH=$PATH:$GOROOT:$GOPATH:$GOBIN
export PATH=$PATH:$GOPATH/bin
export GO_PATH=~/go
export PATH=$PATH:/$GO_PATH/bin

所以我从这里尝试了解决方案:protoc gen go:程序找不到或不可执行,但它们都没有帮助我。任何线索都会有帮助,因为我卡住了,很累。

更新:ls-l/home/deckard/go/bin/protoc gen go grpc显示RWXR-x 1 deckard deckard 7970222маааа1 14:55/home/deckard/go/bin/protoc gen go grpc,并返回打印环境路径/home/deckard/。本地/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/usr/games:/usr/local/games:/snap/bin:/home/deckard/。dotnet/tools:/usr/lib/go-1.13:/home/deckard/go:/home/deckard/go/bin:/home/deckard/go/bin://home/deckard/go/bin

更新:哪个protoc返回/usr/bin/protoc(尝试将其从预编译二进制文件安装到/home/deckard/。local/bin/protoc,没有帮助)。在这两种情况下,protoc gen go grpc—版本返回protoc gen go grpc 1.1.0。我还试图复制谷歌的所有内容。戈朗。org/protobuf到谷歌。戈朗。组织/协议,无结果。

共有1个答案

宋经赋
2023-03-14

所以我删除了github.com/golang/protobuf文件夹,似乎google.golang.org/protobuf已经开始索引,一切都刚刚开始工作。

 类似资料:
  • 问题内容: :go版本go1.14 linux / amd64 go.mod 我正在运行以下命令: 从文件生成我的GRPC输出文件,出现错误 问题答案: 好的,根据https://github.com/protocolbuffers/protobuf- go/releases/tag/v1.20.0 刚刚找到 v1.20 不支持生成gRPC服务定义。将来,Go gRPC项目将提供一个新的proto

  • 我试图用Go gRPC构建一个示例应用程序,但我无法使用“protoc”生成代码 我已使用以下工具安装了所需的库和Go软件包: 去谷歌吧。戈朗。组织/grpc 我也尝试过设置路径,但没有成功。 “proto”文件示例: 错误消息: “protoc gen go:程序未找到或不可执行--go\u out:protoc gen go:插件失败,状态代码为1。”

  • go版本:go版本go1.14 linux/amd64 go.mod 我正在运行以下命令: 从

  • 我在安装Psycopg2时遇到了麻烦。尝试时出现以下错误: 但问题是实际上在我的中;它运行起来没有任何问题: 我对这些错误感到困惑。有人能帮忙吗? 顺便说一下,我所有命令。我也在RHEL 5.5上。

  • 我们使用的是proc-gen-go v2(v2google.golang.org/protobuf,v1github.com/golang/protobuf) 当我们试图编译gRPC服务时,它告诉我们不再支持插件,我们应该使用go-gRPC\u out: 当使用go-grpc\u out时,它告诉我们需要protoc gen go rpc: 您在哪里找到或如何安装protoc gen go rpc

  • 因为几天前詹金斯的测试被取消了。我在里面得到的错误是: 配置根项目“MyAutomationTests”时出现问题。 未找到名为“测试编译”的配置。 这是我的build.gradle文件: 我们在詹金斯的自动测试一直运行良好,直到几天前。从那时起,它们就不再编译这个问题一开始就给出的错误了。在依赖项代码块中有“实现组”,但我最近将其改为TestCompile。“实现组”工作得很好,但它开始在Tes