gpt4 book ai didi

swift - CocoaPods 和迦太基

转载 作者:IT王子 更新时间:2023-10-29 05:36:37 27 4
gpt4 key购买 nike

我有一个同时使用 Carthage 和 Cocoapods 的项目。它们都有一个共同的依赖项(准确地说是 PureLayout)。奇怪,但项目编译正常,没有任何关于类重新声明等的错误。所以问题是:为什么它有效以及当我调用 PureLayout 的方法时实际使用了哪个版本的依赖项——Carthage 的还是 Cocoapods 的?

最佳答案

CarthageCocoaPods 在构建依赖项并将它们集成到项目中方面有很大不同。

CocoaPods 是集中式依赖管理器,它将构建您的依赖项,并通过创建新的 .xcworkspace 工作区将它们直接集成到项目中。这意味着您可以在构建后立即访问构建依赖项。

另一方面,Carthage 是去中心化的依赖管理器,它让您负责将依赖项集成到您的项目中。 Carthage 构建在 Cartfile 中指定的框架,并将它们移动到 Carthage/Builds 文件夹。在构建过程之后,由您来集成和管理依赖项。

在您的情况下,当您使用 CocoaPods 和 Carthage 构建 PureLayout 依赖项时,CocoaPods 将其集成到项目中,而 Carthage 将构建留在 Carthage/Builds 中,这意味着你只使用了 PureLayout 的 CocoaPods 构建版本。

此外,使用多个包/依赖项管理器也是一种不好的做法。您应该坚持使用并适应它。

关于swift - CocoaPods 和迦太基,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37744365/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com