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

github.com/golang/protobuf/protoc-gen-go没有Go语言版本1.18的包路径

宓和同
2023-03-14

我们正在尝试构建一个应用程序,但无法使用protoc gen go生成代码

$使

go版本go1.18 linux/amd64

/usr/本地/go/bin/go

make-C go\u源所有

make[1]:输入目录“/home/593m/team\u name/zk/internal pkg/go\u source”cd/home/593m/team\u name/zk/internal pkg/go\u source//src/nexus。com/vendor/github。com/golang/protobuf/protoc gen go;go install without-mod=vendor,directory/home/593m/team\u name/zk/internal pkg/go\u source/src/appnexus。com/vendor/github。com/golang/protobuf/protoc gen go没有包路径生成文件:72:目标配方“/home/593m/team\u name/zk/internal pkg/go\u source/bin/protoc gen go”失败生成[1]:***[/home/593m/team\u name/zk/internal pkg/go\u source/bin/protoc gen go]错误1生成[1]:离开目录“/home/593m/team\u name/zk/internal pkg/go\u source”生成文件:26:目标配方“all”失败生成:***[全部]错误2

生成文件:

$(repoot)/bin/protoc gen go:$(repoot)/src/nexus。com/vendor/github。com/golang/protobuf/protoc gen go/*。转到cd$(Repoot)/src/nexus。com/vendor/github。com/golang/protobuf/protoc gen go$(GOINSTALL)

$(repoot)/bin/generate\u proto:$(repoot)/bin/protoc gen go$(repoot)/resources/proto/*mkdir-p$(repoot)/src/nexus。com/odc/odcproto在此步骤中生成

共有1个答案

冉子石
2023-03-14

尝试将代码从make文件更改为此代码

CURRENT_DIR=$(shell pwd)

build:
    CGO_ENABLED=0 GOOS=linux go build -mod=vendor -a -installsuffix cgo -o ${CURRENT_DIR}/bin/${APP} ${APP_CMD_DIR}/main.go

proto-gen:
    ./scripts/gen-proto.sh  ${CURRENT_DIR}
    ls genproto/*.pb.go | xargs -n1 -IX bash -c "sed -e '/bool/ s/,omitempty//' X > X.tmp && mv X{.tmp,}"
 类似资料:
  • 如何检查protoc gen go和protoc gen validate的版本? 我试着不受命令,那是行不通的。

  • 我想用gradle编译我的grpc/proto文件。爪哇,科特林(protobuf 任何提示都非常感谢。

  • 本文向大家介绍浅析Go语言版本的forgery,包括了浅析Go语言版本的forgery的使用技巧和注意事项,需要的朋友参考一下 使用过Python语言的朋友们可能使用过 forgery_py ,它是一个伪造数据的工具。能伪造一些常用的数据。在我们开发过程和效果展示是十分有用。但是没有Go语言版本的,所以就动手折腾吧。 从源码入手 在forgery_py的 PyPi 有一段的实例代码: 从以上的方法

  • 实际开发中,对于超出 int64 或者 uint64 类型的大数进行计算时,如果对精度没有要求,使用 float32 或者 float64 就可以胜任,但如果对精度有严格要求的时候,我们就不能使用浮点数了,因为浮点数在内存中只能被近似的表示。 Go语言中 math/big 包实现了大数字的多精度计算,支持 Int(有符号整数)、Rat(有理数)和 Float(浮点数)等数字类型。 这些类型可以实现

  • 我们使用的是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

  • gen 项目目的是为 Go 语言带来了类似泛型的函数,灵感来自 C# 的 LinQ 和 JavaScript 的 Array methods 以及 underscore 库。操作包括过滤、分组、排序等等。 示例代码: shiny := func(p *Product) bool {    return p.Manufacturer == "Apple"}wishlist := products.Where(shiny)