panic: qtls.ConnectionState not compatible with tls.ConnectionState
问题重现
之前一个 go-micro 1.18 的项目
执行 go run main.go 命令时出现以下报错
go run main.go
panic: qtls.ConnectionState not compatible with tls.ConnectionState
goroutine 1 [running]:
github.com/lucas-clemente/quic-go/internal/handshake.init.1()
/Users/taadis/go/pkg/mod/github.com/lucas-clemente/quic-go@v0.13.1/internal/handshake/unsafe.go:17 +0xc5
exit status 2
解决办法
go 版本的问题, 据说这个 qtls 是在 go1.15 下build的项目,当版本高于1.15就会报这个错, 不是说向下兼容嘛?
goland 的里指定 go的版本
或者单独下载 go 版本后,用兼容的版本来跑
go1.14 run main.go
当前也可以尝试升级go-micro(兼容有风险,升级需要谨慎)
go get github.com/micro/micro/v3