我目前正在寻找一个只支持Carthage作为包管理器的库.我想要整合它的项目已经有一些CocoaPods依赖项.有没有人试过同时使用这两个经理?
我觉得这是一个坏主意,但我很想知道这是否是实际情况.
你将遇到的主要问题是CocoaPods和Carthage彼此不了解.这意味着如果由CocoaPods管理的依赖项和Carthage的依赖项共享一个共同依赖项,则可能会出现冲突.
Carthage要求您手动将框架添加到项目中,这意味着您可能无法链接任何共享依赖项并依赖CocoaPods添加的框架,但您不会在两个依赖项管理器中获得依赖项版本解析并且它赢了不清楚这一切是如何运作的.
话虽如此,没有任何固有的原因可以解释为什么你不能同时使用它们,如果你想要包含的库很少或没有依赖,那么使用Carthage可能仍然更可取,而不是将库作为子模块包含甚至复制源代码.
如果可能,我的建议是通过Carthage包含您的其他依赖项,或者为库创建podspec,以便您可以专门使用Carthage或CocoaPods.