kitex自动生成代码 | 青训营阅读笔记

235 阅读2分钟

伴学笔记创作活动的第 9 天

今天又是巨坑的一天。

离项目提交还有1天,因此大家都在忙着补业务实现。比如我在实现完点赞总数这个后,想利用kitex生成代码,就开始陷入究极漫长的纠错过程。实际上很简单,跟着官方文档走就行。但是我偏不,偏是网上随便找了一个,导致我自己浪费了很多时间。

官方文档流程,我再过一遍。

准备 Golang 开发环境

  1. 如果您之前未搭建 Golang 开发环境, 可以参考 Golang 安装
  2. 推荐使用最新版本的 Golang,我们保证最新三个正式版本的兼容性(现在 >= v1.16)。
  3. 确保打开 go mod 支持 (Golang >= 1.15时,默认开启)
  4. kitex 暂时没有针对 Windows 做支持,如果本地开发环境是 Windows 建议使用 WSL2

快速上手

在完成环境准备后,本章节将帮助你快速上手 Kitex

安装代码生成工具

首先,我们需要安装使用本示例所需要的命令行代码生成工具:

  1. 确保 GOPATH 环境变量已经被正确地定义(例如 export GOPATH=~/go)并且将$GOPATH/bin添加到 PATH 环境变量之中(例如 export PATH=$GOPATH/bin:$PATH);请勿将 GOPATH 设置为当前用户没有读写权限的目录
  2. 安装 kitex:go install github.com/cloudwego/kitex/tool/cmd/kitex@latest
  3. 安装 thriftgo:go install github.com/cloudwego/thriftgo@latest

安装成功后,执行 kitex --version 和 thriftgo --version 应该能够看到具体版本号的输出(版本号有差异,以 x.x.x 示例):

$ kitex --version
vx.x.x

$ thriftgo --version
thriftgo x.x.x

Copy

  1. 如果在安装阶段发生问题,可能主要是由于对 Golang 的不当使用造成,请依照报错信息进行检索

当我们照着上面的文档执行之后,就可以开始生成代码了。 比如我要生成服务favorite的代码,我应该输入

kitex -service favorite idl/favorite.proto

如果后缀是thrift, 你就写favorite.thrift.

如果报错如下:

image.png

那就按照指示cd bin/protoc 他会让你按照要求去安装protoc,安装完毕,重新执行上述指令即可。