Carthage 嵌套依赖

Carthage nested dependencies

我是 iOS 框架的新手,但在玩 CarthageSwift 我遇到了一个非常简单的问题,但我似乎没有找到我正在寻找的答案对于.

我目前正在研究 AlamofireObjectMapper 库,发现还有另一个名为 AlamofireObjectmaper 的框架,它在这两者之间优雅地创建了一个 link。

现在我的问题是我应该如何在我的 Cartfile 中处理这个问题?我的第一个想法是包括所有三个

github "Alamofire/Alamofire" ~> 3.0
github "Hearst-DD/ObjectMapper" ~> 1.1
github "tristanhimmelman/AlamofireObjectMapper" ~> 2.1

但后来我发现,由于 AlamofireObjectMapper 依赖于将 AlamofireObjectMapper 嵌入到它自己的框架中,所以我不需要包括这两个。所以我删除了所有内容,只添加了 AlamofireObjectMapper 行。而且我的原型仍然运行良好(我仍然可以 import Alamofire 在我的代码中。

我应该如何处理这种情况?我应该保留单个 Alamofire 和 `ObjectMapper 框架吗?如果是这样,迦太基实际上是如何处理它们的?

因为据我所见,AlamofireObjectMapper 框架确实包含它自己的 Alamofire 框架版本。两个 Alamofire 框架在某个时候是否包含不同的版本?如果是这样,那不会在 运行 时间造成任何麻烦吗?

所以我绝对认为您只需包含 AlamofireObjectMapper 框架就可以了,只是因为它似乎在其 Carthage 资源中进行回购检查,包括 Cartfile。因此,当您更新 AlamofireObjectMapper 时,所有 ITS 依赖项都会相应更新。

但是,如果出于某种原因,您觉得需要手动更新或降级(坏主意)AlamofireObjectMapper 依赖项之一,您可以简单地进入其 Cartfile 并更改版本号或版本操作~>== 或您可能需要做的任何事情。希望这对您有所帮助!