当前位置:   article > 正文

mac上 Kratos 配置 protoc

mac 安装protoc

前言

protocprotobuf 文件(.proto)的编译器,可以借助这个工具把 .proto 文件转译成各种编程语言对应的源码,包含数据类型定义、调用接口等。

protoc 在设计上把 protobuf 和不同的语言解耦了,底层用 c++ 来实现 protobuf 结构的存储,然后通过插件的形式来生成不同语言的源码。

可以把 protoc 的编译过程分成简单的两个步骤:

1)解析 .proto 文件,转译成 protobuf 的原生数据结构在内存中保存;

2)把 protobuf 相关的数据结构传递给相应语言的编译插件,由插件负责根据接收到的 protobuf 原生结构渲染输出特定语言的模板。

protoc-gen-goprotobuf 编译插件系列中的Go版本。

设置开启GO111MODULE、配置代理

  1. go env -w GO111MODULE=on
  2. go env -w GOPROXY=https://goproxy.cn/

安装 kratos

  1. go install github.com/go-kratos/kratos/cmd/kratos/v2@latest
  2. kratos upgrade
  3. go mod tidy # 更新依赖库

安装 protobuf 相关库

  1. # 安装 proto
  2. go get -u github.com/golang/protobuf/proto
  3. # kratos升级到最新版
  4. sudo kratos upgrade
  5. # 安装 protoc-gen-go-grpc
  6. go get -u google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest
  7. go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest
  8. # 安装 protoc-gen-go-http
  9. go get -u github.com/go-kratos/kratos/cmd/protoc-gen-go-http/v2
  10. go install github.com/go-kratos/kratos/cmd/protoc-gen-go-http/v2
  11. # 安装 protoc-gen-go
  12. go get -u github.com/golang/protobuf/protoc-gen-go@latest
  13. go install github.com/golang/protobuf/protoc-gen-go@latest
  14. # 安装 protoc-gen-go-errors
  15. go get -u github.com/go-kratos/kratos/cmd/protoc-gen-go-errors/v2
  16. go install github.com/go-kratos/kratos/cmd/protoc-gen-go-errors/v2
  17. # 安装 protoc-gen-openapiv2
  18. go get -u github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2
  19. go install github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2
  20. # 安装 protoc-gen-validate
  21. go get -u github.com/envoyproxy/protoc-gen-validate
  22. go install github.com/envoyproxy/protoc-gen-validate

生成所有proto源码、wire等等,下面命令二选一

  1. go generate ./...
  2. go run generate.go ./..

运行项目

kratos run
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/爱喝兽奶帝天荒/article/detail/807601
推荐阅读
  

闽ICP备14008679号