在同一项目中使用迦太基和CocoaPods

问题描述 投票:29回答:2

我目前正在寻找仅支持Carthage作为程序包管理器的库。我要与之集成的项目已经具有一些CocoaPods依赖项。是否有人尝试同时使用这两个管理器?

这让我感到一个不好的主意,但我很想知道实践中是否是这种情况。

cocoapods carthage
2个回答
33
投票

您将遇到的主要问题是CocoaPods和Carthage彼此不了解。这意味着,如果由CocoaPods管理的依赖项和由迦太基管理的依赖项共享一个公共依赖项,则会发生冲突。 迦太基要求您手动将框架添加到项目中,这意味着您可以避免不链接任何共享依赖项并依靠CocoaPods添加的框架,但是不会在两个依赖项管理器之间获得依赖项版本解析,并且目前尚不清楚这一切如何运作。

话虽如此,但没有任何内在原因导致您不能同时使用两者,并且如果要包含的库几乎没有依赖项,则使用Carthage而不是将库作为子模块可能还是更可取的甚至将源复制到其中。

我的建议,如果可能的话,是通过Carthage包含其他依赖项,或者为该库创建一个podspec,以便您可以单独使用Carthage或CocoaPods。

最好使用单个Dependency Manager来获得最佳的版本处理经验。您可以要求框架的开发人员提供支持。有很多极端的情况,但是CocoaPods和Carthage彼此之间没有冲突,这就是为什么可以同时使用它们的原因

[CocoaPods vs Carthage]


0
投票
最好使用单个Dependency Manager来获得最佳的版本处理经验。您可以要求框架的开发人员提供支持。有很多极端的情况,但是CocoaPods和Carthage彼此之间没有冲突,这就是为什么可以同时使用它们的原因
© www.soinside.com 2019 - 2024. All rights reserved.