• 周二. 1 月 27th, 2026

    安装go-redis报错

    root

    1 月 27, 2026

    go: github.com/redis/go-redis/v8@v8.11.5: parsing go.mod:
    module declares its path as: github.com/go-redis/redis/v8
    but was required as: github.com/redis/go-redis/v8

    这个错误表明你在使用 github.com/redis/go-redis/v8 这个导入路径,但实际模块声明的路径是 github.com/go-redis/redis/v8。这两个路径是不同的,主要有以下原因:

    问题原因

    这是 go-redis 库的仓库迁移 导致的路径变化:

    1. 旧路径(v8及之前):github.com/go-redis/redis/v8
    2. 新路径(v9及以上):github.com/redis/go-redis/v9

    你的代码中使用了新的导入路径,但依赖的版本是旧的 v8 版本。

    解决方案

    方案1:继续使用 v8 版本(推荐保持兼容性)

    // 在代码中将导入路径改为旧路径
    import "github.com/go-redis/redis/v8"
    
    // go.mod 中应该这样写
    require github.com/go-redis/redis/v8 v8.11.5

    方案2:升级到 v9 版本

    // 使用新路径,但需要升级到 v9
    import "github.com/redis/go-redis/v9"
    
    // go.mod 中应该这样写
    require github.com/redis/go-redis/v9 v9.x.x

    然后运行:

    go get github.com/redis/go-redis/v9@latest

    方案3:修复当前的 go.mod

    如果你已经混用了路径,可以这样修复:

    1. 清理并重置依赖
    # 删除 go.mod 中的相关行
    go mod edit -droprequire=github.com/redis/go-redis/v8
    
    # 添加正确的依赖
    go get github.com/go-redis/redis/v8@v8.11.5
    1. 或者直接修改 go.mod 文件
    // 将 go.mod 中的这一行:
    require github.com/redis/go-redis/v8 v8.11.5
    
    // 改为:
    require github.com/go-redis/redis/v8 v8.11.5

    检查你的代码

    检查所有 Go 文件中是否有这样的导入语句:

    import "github.com/redis/go-redis/v8"  // ❌ 错误(对于 v8)
    import "github.com/go-redis/redis/v8"  // ✅ 正确(对于 v8)

    总结

    • v8 及之前版本:使用 github.com/go-redis/redis/v8
    • v9 及之后版本:使用 github.com/redis/go-redis/v9

    根据你的实际情况选择合适的解决方案。如果项目需要保持稳定,建议使用方案1继续用 v8 版本。

    root

    发表回复

    您的邮箱地址不会被公开。 必填项已用 * 标注