protobuf

module
v0.0.0-...-f4276bb Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 23, 2023 License: MIT

README

Probuf的定义

安装一个插件: vscode-proto3

hello.proto ---> 怎么生成一个Go语言的对象?依赖于一个protoc编译器

protoc是c++写的一个cli工具, 用于辅助开发的, 帮你生产Go代码

protobuf 的编译: 生成数据结构 hello.proto ---> protoc ---> go语言的代码

libprotoc 3.21.12

编译

$ cd protobuf ## 以protobuf作为编译的工作目录
// option go_package="gitee.com/go-course/go11/skill/rpc/protobuf/pb";
// pb/hello.pb.go ---> pb已存在,就不创建 直接把生成的文件放到 pb下面
$ protoc -I=. --go_out=. --go_opt=module="gitee.com/go-course/go11/skill/rpc/protobuf" pb/hello.proto

any类型

$ cd protobuf ## 以protobuf作为编译的工作目录
// option go_package="gitee.com/go-course/go11/skill/rpc/protobuf/pb";
// pb/hello.pb.go ---> pb已存在,就不创建 直接把生成的文件放到 pb下面
$ protoc -I=. -I=/usr/local/include --go_out=. --go_opt=module="gitee.com/go-course/go11/skill/rpc/protobuf" pb/hello.proto

// model.go <--- protoc-gen-go  ------> blog.pb.go
// interface.go <---- gprc-gen-go-grpc ----> blog_grpc.pb.go

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL