0

在我的项目中,我同时使用了 Swinject 和 SwinjectAutoregistration pod。两者通常都被声明为“2.0.0”版本,如下所示: pod 'Swinject', '2.0.0' pod 'SwinjectAutoregistration', '2.0.0'

但是为了在 Xcode 9 的 beta 版本中构建我的项目,我需要采用 Swinject github repo 的特定分支,如此处所述。新声明如下所示:

pod 'Swinject', :git => 'https://github.com/Swinject/Swinject.git', :branch => 'swift4'

当我尝试时pod update,我有依赖项错误。我相信 SwinjectAutoregistration 声明了对 Swinject 2.0 的依赖,因此我对同一个 pod 有不同的来源。

有没有办法告诉 cocoapods 这个特定的 pod 来源就像2.0 版本?

4

1 回答 1

1

好吧,对于这个特定的 pod 作品,似乎将源指定为 github 存储库而不是 cocoapod 存储库。

我在该行之前添加了这一target 'MyGreatApp' do行:

source 'https://github.com/Swinject/Swinject.git'

我必须指定这适用于这个特定的 pod,但可能不适用于其他情况。Swinject 背后的优秀人员在他们的 github 存储库中的一个分支上修复了 Xcode(9,beta)错误,该分支不在 cocoapod 存储库中。

所以这个答案在这种情况下有效,但不幸的是,这可能不像我希望的那样通用。

于 2017-06-29T12:41:43.490 回答