Golang 升级不兼容的模块

Golang upgrading incompatible modules

所以我有一个不兼容的 chi module 版本,我无法使用 go get <package-name> 升级它,它只能升级到最新的不兼容版本,而还有很多版本释放。我需要新版本库中的一些不兼容库所没有的功能。 go.mod 文件不兼容库如下所示: github.com/go-chi/chi v4.0.2+incompatible h1:maB6vn6FqCxrpz4FqWdh4+lwpyZIQS7YEAUcHlgXVRs=

我尝试删除我的 modules 并 运行 go mod init again using,但它仍然给我不兼容的版本。我认为这可能是因为我的项目已连接到我的 bitbucket 存储库。我也尝试从 go 环境中删除 module 并再次下载它,但结果相同。

我该如何克服这个问题?有人有什么想法吗?也许我还必须从我的存储库中手动清除 mod 规则,然后再次尝试初始化它们?

谢谢。

当你想要的版本开始与 Go 模块兼容时,你必须 go get 依赖项并使用正确的版本化导入路径导入源文件中的包,如 中声明的他们的 go.mod 文件。

Chi 在 master 分支上的当前 go.mod 声明其模块为:

module github.com/go-chi/chi/v5

所以:

go get github.com/go-chi/chi/v5

在源文件中:

import "github.com/go-chi/chi/v5"

func main() {
    r := chi.NewRouter()
    // ...
}