代码之家  ›  专栏  ›  技术社区  ›  Pensu

在单个项目中使用不同版本的go包

go
  •  -2
  • Pensu  · 技术社区  · 6 年前

    https://godoc.org/github.com/docker/docker/pkg ,现在这个包中有一些目录在旧版本中可用,但在当前版本中不可用,反之亦然。我想两种都用,做go-get总是得到最新的版本。如果我切换到旧版本,我会错过最新的目录。你知道我怎么保存这两个版本吗?

    蒂亚。

    1 回复  |  直到 6 年前
        1
  •  3
  •   Alex Pliutau    6 年前

    在gopkg.in的帮助下,如果新版本和旧版本的主要版本不同,则可以使用不同的导入路径导入:

    然后分别在Go中使用它们:

    import (
        redisv1 "gopkg.in/go-redis/redis.v1"
        redisv2 "gopkg.in/go-redis/redis.v2"
    )
    

    如果主版本相同,则无法实现,因为 go get go modules 其他的软件包管理者也不支持它。