乐趣区

关于go:go入门grpc第四章使用Makefile优化protoc命令

更不便的在微信公众号阅读文章能够关注公众号:海生的 go 花园

一、前言

在第三章,咱们曾经学会了应用 protoc 命令,生成 go 文件。代码如下:

protoc --go_out=. --go_opt=paths=source_relative \
       --go-grpc_out=. --go-grpc_opt=paths=source_relative \
       api/hello.proto

protoc 命名须要列出 .proto 文件,如果咱们有多个文件,或者咱们想多个文件夹,怎么办?
此时咱们能够借助 Makefile 来,执行一些脚本,主动生成 go 代码。

二、应用 Makefile 来生成 protoc 命令。

咱们在 grpc-demo1 目录新建一个 Makefile 文件。

touch Makefile

此时查看 grpc-demo1 目录,构造如下:

➜  grpc-demo1 git:(master) ✗ tree
.
├── Makefile
├── api
│   ├── hello.pb.go
│   ├── hello.proto
│   └── hello_grpc.pb.go
├── go.mod
└── go.sum

1 directory, 6 files

多了一个 Makefile 文件。
咱们生成一个 make protoc 命令,代码如下,写入到 Makefile 文件中。

protoc:
    protoc --go_out=. --go_opt=paths=source_relative \
           --go-grpc_out=. --go-grpc_opt=paths=source_relative \
           api/hello.proto

写好后,咱们在 grpc-demo1 目录执行下:

$ make protoc

此时这个 make protoc 命名代替了 protoc 命令一大堆参数,简化了咱们的复杂度。
要生成 go 文件只有执行一下就行。

退出移动版