如何在go dep项目中使用go module作为依赖?

How to use go module as dependency in go dep project?

我有围棋dep project. I want to use go module as dependency. For example. I need this one https://github.com/pion/webrtc.

所以,我尝试像这样声明依赖关系,在 Gopkg.toml:

[[constraint]]
  name = "github.com/pion/webrtc"
  revision = "6a0b7020b1724dcb302ddfadab0c80fabc144c97"

当我执行 dep ensure 时,出现错误:

Solving failure: No versions of github.com/pion/webrtc met constraints:
        6a0b7020b1724dcb302ddfadab0c80fabc144c97: "github.com/pion/webrtc" imports "github.com/pion/webrtc/v2/pkg/rtcerr", which con
tains malformed code: no package exists at "github.com/pion/webrtc/v2/pkg/rtcerr"
        v2.0.14: Could not introduce github.com/pion/webrtc@v2.0.14, as it is not allowed by constraint 6a0b7020b1724dcb302ddfadab0c
80fabc144c97 from project ***.
        v2.0.13: Could not introduce github.com/pion/webrtc@v2.0.13, as it is not allowed by constraint 6a0b7020b1724dcb302ddfadab0c
80fabc144c97 from project ***.

看来,问题与库的 2 版本 有关。当它是 1 时,一切正常。

感谢使用 Pion :)

我们有相同的 issue opened on Pion WebRTC issue tracker. There is a PR 来修复这个案例的问题。

如果可能的话,我会切换到模块,但与此同时希望使用这个补丁版本的 dep 应该有所帮助!