有诸如这类报错
go: ai-ws-session-service/cmd/ai-ws-session-service imports
github.com/aliyun-sls/opentelemetry-go-provider-sls/provider imports
go.opentelemetry.io/otel/metric/global: module go.opentelemetry.io/otel/metric@latest found (v1.30.0), but does not contain package go.opentelemetry.io/otel/metric/global
go: ai-ws-session-service/internal/data imports
github.com/redis/go-redis/extra/redisotel/v9 imports
go.opentelemetry.io/otel/metric/instrument: module go.opentelemetry.io/otel/metric@latest found (v1.30.0), but does not contain package go.opentelemetry.io/otel/metric/instrument
go: ai-ws-session-service/internal/server imports
github.com/go-kratos/kratos/v2/errors tested by
github.com/go-kratos/kratos/v2/errors.test imports
google.golang.org/grpc/test/grpc_testing: module google.golang.org/grpc@latest found (v1.67.0), but does not contain package google.golang.org/grpc/test/grpc_testing
大概就是grpc的一些testing包里缺少一些东西,在v1.67.0 这个版本。
遇到这种问题大概有这样的几个思路,问题的引起肯定是对不同的包进行了升级,其中一部分包对另外一部分包有一些依赖,
所以这个问题要么就是升级grpc的版本。要么就是降级一些其他的版本。
在最开始的时候,我一直以为是proto的版本问题。
在输入 protoc --version 查看时,基本上是升级到了最新的版本。
然后就在倒腾各种降级的办法,这种降级的版本通常来说有2种,一种是命令行直接安装指定的版本。另外一种是下载源码进行编译,但是源码这种就比较坑,会缺少很多源文件配置等。
在倒腾了一顿后确实会少一些东西。
[kod.makarlar.net)
[kod.longkesheji.com)
[kod.mtedc.com)
[kod.micro-voice.com)
[kod.minifox2.com)
[kod.mobulingyi.com)
[kod.mjqdfc.net)
[kod.naoki-endo.com)
然后仔细一看,发现 protoc-gen-go-grpc v1.3.0 (当然这是降级之后的),于是在思考是不是降级go-grpc就行了。
想着反正之前的protoc降级都一波三折,不如试试呗。
于是在思考。我是先卸载之前的版本还是直接安装降级
觉得可以先直接安装降级的版本,看是否会覆盖之前的,然后再决定看情况
go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@v1.4.0
于是执行这样的命令,就成功降级了
觉得在特别是遇到环境相关的问题时,一步一步解决,遇到行不通的问题。看是否思考的角度会有问题。多尝试一些不同的方案