mac上 Kratos 配置 protoc

这篇具有很好参考价值的文章主要介绍了mac上 Kratos 配置 protoc。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

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

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

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

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

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

protoc-gen-goprotobuf 编译插件系列中的Go版本。文章来源地址https://www.toymoban.com/news/detail-688501.html

设置开启GO111MODULE、配置代理

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

安装 kratos

go install github.com/go-kratos/kratos/cmd/kratos/v2@latest

kratos upgrade

go mod tidy # 更新依赖库

安装 protobuf 相关库

# 安装 proto
go get -u github.com/golang/protobuf/proto

# kratos升级到最新版
sudo kratos upgrade

# 安装 protoc-gen-go-grpc
go get -u google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest
go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest

# 安装 protoc-gen-go-http
go get -u github.com/go-kratos/kratos/cmd/protoc-gen-go-http/v2
go install github.com/go-kratos/kratos/cmd/protoc-gen-go-http/v2

# 安装 protoc-gen-go
go get -u github.com/golang/protobuf/protoc-gen-go@latest
go install github.com/golang/protobuf/protoc-gen-go@latest

# 安装 protoc-gen-go-errors
go get -u github.com/go-kratos/kratos/cmd/protoc-gen-go-errors/v2
go install github.com/go-kratos/kratos/cmd/protoc-gen-go-errors/v2

# 安装 protoc-gen-openapiv2
go get -u github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2
go install github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2

# 安装 protoc-gen-validate
go get -u github.com/envoyproxy/protoc-gen-validate
go install github.com/envoyproxy/protoc-gen-validate

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

go generate ./...      

go run generate.go ./..

运行项目

kratos run

到了这里,关于mac上 Kratos 配置 protoc的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 判断自己的mac是macOS x64 、 macOS ARM64

    在学习微信小程序时,需要安装微信开发者工具。那么mac用户怎么知道自己mac版本是macOS x64 还是macOS ARM64? 解决方法如下 : 在终端输入uname -a 具体操作: 一、打开访达 二、应用程序 —— 实用工具—— 终端  三、输入uname -a ,框住的位置即为版本号  

    2024年02月11日
    浏览(44)
  • 查看自己的mac是macOS x64还是macOS ARM64

    做前端开发的,刚刚入手macbookpro 14吋 m1pro 系列,安装微信开发者工具,结果发现mac系统还有两个版本的,这…难为住我了,只能找linux指令查看了 linux指令有个 uname -a 现实所有系统信息的指令 打开终端输入: uname -a OK,知道了

    2024年02月13日
    浏览(46)
  • 老Mac电脑安装macOS Ventura实战

    前提说明:此实战适用于老旧Mac电脑(2015年之前的,无法在系统设置中升级macOS Ventura系统的电脑)安装macOS Ventura系统! 软件: OpenCore-Patcher-GUI.app.zip    2023年版本v1.2.1已支持 macOS Sonoma new------------2024更新----------------------------- macOS 14.2 系统部分机型和基于Metal 3802显卡的机型

    2024年02月09日
    浏览(77)
  • Kratos源码-Logging

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 提示:这里可以添加本文要记录的大概内容: 例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。 提示:以下是本篇

    2024年02月10日
    浏览(35)
  • Kratos源码-日志-目录

    提示:以下是本篇文章正文内容,下面案例可供参考 Kratos源码-Java中的日志框架 Kratos源码-Logging

    2024年02月11日
    浏览(33)
  • Kratos框架源码解读-目录

    日志

    2024年02月11日
    浏览(37)
  • Mac | 关于 MacBookPro MacOS 13 经常卡死

    电脑配置:MacBook Pro M1,系统 13.3 最近在Mac日常使用中经常出现卡住,接着就是鼠标点到哪,哪就转圈。强制退出软件也不行,只能通过重启恢复一段时间。这个频率基本一天一次,有时候一天能出现两次,简直让人崩溃!! Mac的BUG,是由于其Mac自带的简体中文输入法(Sim

    2024年02月11日
    浏览(46)
  • Mac中idea快捷键(Keymap->macOS)

              mac:MacBook Pro(13英寸,M2,2022年)         系统版本:12.4         idea快捷键配置:本文快捷键设置基于macOS(Keymap-macOS) 1.command+F    在当前文件进行文本查找 2.command+shift+F  进行工程和模块中的文件搜索(全局搜索) 3.command + O 查找类文件 4.command + shift + O 查

    2024年02月07日
    浏览(62)
  • 关于macos:如何在mac上完全卸载vscode

    以下是VSCode在Mac OS X上存储内容的所有地方,除了Visual Studio Code.app本身,它位于Applications文件夹中: 复制粘贴这一段到终端 然后将vscode拉到垃圾桶即完成

    2024年02月12日
    浏览(51)
  • 使用mac自带VNC公网远程控制macOS

    macOS系统自带有VNC远程桌面,我们可以在控制端上安装配置VNC客户端,以此来实现远程控制macOS。但通常需要在不同网络下进行远程控制,为此,我们可以在macOS被控端上使用cpolar做内网穿透,映射VNC默认端口5900,通过所生成的公网地址,来实现在公网环境下远程控制VNC。 1

    2024年02月08日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包