安装go-micro
# 安装go-micro
本文介绍安装go-micro的步骤。
注意: protobuf和go micro相关工具的版本必须完全一致,才能确保生成的pb文件是相同的,否则文件内容会有差异。
# 安装go-micro v2
**注意: **如下的各个工具的版本要严格匹配,否则可能会有问题。
安装protobuf 根据教程安装protobuf, 安装3.10.0版本的protobuf。
安装go-micro工具集
go get github.com/micro/micro/v2@v2.4.0
go get github.com/golang/protobuf/proto@v1.3.5
go get github.com/golang/protobuf/protoc-gen-go@v1.3.5
go get github.com/micro/protoc-gen-micro/v2@v2.0.0
- Makefile 执行make proto生成pb文件,示例如下:
MODIFY=Mgithub.com/micro/go-micro/api/proto/api.proto=github.com/micro/go-micro/v2/api/proto
.PHONY: proto
proto:
@for var in $(shell find . -name "*.proto"); do \
protoc --proto_path=.\
--micro_out=${MODIFY},paths=source_relative:.\
--go_out=${MODIFY},paths=source_relative:. $$var; \
done
@find . -name "*.pb.go" | xargs -n1 -IX bash -c 'sed s/,omitempty// X > X.tmp && mv X{.tmp,}'
# 安装go-micro v4
安装protobuf 根据教程安装protobuf, 安装最新版本[当前最新版本为3.19.4]的protobuf。
安装go-micro工具集
go install google.golang.org/protobuf/cmd/protoc-gen-go@latest
go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest
go install github.com/asim/go-micro/cmd/protoc-gen-micro/v4@latest
- Makefile 执行make proto生成pb文件,示例如下:
MODIFY=Mgithub.com/micro/go-micro/api/proto/api.proto=go-micro.dev/v4/api/proto
proto:
@for var in $(shell find . -name "*.proto"); do \
protoc --proto_path=.\
--micro_out=${MODIFY},paths=source_relative:.\
--go_out=${MODIFY},paths=source_relative:. $$var; \
done
@find . -name "*.pb.go" | xargs -n1 -IX bash -c 'sed s/,omitempty// X > X.tmp && mv X{.tmp,}'
# 切换go-micro版本
若您有多个项目使用的是不同的go-micro版本,需要经常切换版本,那么建议编写切换脚本。示例如下:
wangshibiao@192 ~ cat /usr/local/bin/switch_go-micro_v2.sh
#! /bin/sh
cd ~/Downloads/tmp/protobuf-3.10.0 && make install
go get github.com/micro/micro/v2@v2.4.0
go get github.com/golang/protobuf/proto@v1.3.5
go get github.com/golang/protobuf/protoc-gen-go@v1.3.5
go get github.com/micro/protoc-gen-micro/v2@v2.0.0
wangshibiao@192 ~
wangshibiao@192 ~ cat /usr/local/bin/switch_go-micro_v4.sh
#! /bin/sh
cd ~/Downloads/tmp/protobuf-3.19.4
make install
go install google.golang.org/protobuf/cmd/protoc-gen-go@latest
go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest
go install github.com/asim/go-micro/cmd/protoc-gen-micro/v4@latest
wangshibiao@192 ~
执行/usr/local/bin/switch_go-micro_v2.sh则切换到v2版本,执行/usr/local/bin/switch_go-micro_v4.sh则切换到v4版本。
上次更新: 2022-02-15 00:48:13