我对iOS框架相当陌生,但在Carthage
和Swift
玩游戏时,我提出了一个非常简单的问题,但我似乎找不到我想要的答案。
我目前正在玩Alamofire
和ObjectMapper
个库,发现还有另一个名为AlamofireObjectmaper
的框架,可以优雅地在这两个框架之间建立链接。
现在我的问题是如何在我的Cartfile中处理这个问题?我的第一个想法是包括所有三个
github "Alamofire/Alamofire" ~> 3.0
github "Hearst-DD/ObjectMapper" ~> 1.1
github "tristanhimmelman/AlamofireObjectMapper" ~> 2.1
但后来我认为,由于AlamofireObjectMapper
依赖于将Alamofire
和ObjectMapper
嵌入其自己的框架中,因此我不需要包含这两者。所以我删除了所有内容,只添加了单AlamofireObjectMapper
行。我的原型仍然运行良好(我仍然可以import Alamofire
在我的代码中。
我该如何处理这种情况?我应该保留单个Alamofire
和`ObjectMapper框架。如果是这样,他们如何真正由迦太基处理?
因为根据我所见,AlamofireObjectMapper
框架确实包含了它自己的Alamofire
框架版本。是否会发生两个Alamofire
框架在某些时候包含不同的版本?如果是这样,在运行时不会造成任何麻烦吗?
答案 0 :(得分:0)
所以我绝对认为你只需要包含AlamofireObjectMapper
框架就可以了,只是因为它似乎是对其Carthage资源的回购检查,包括Cartfile
。因此,当您更新AlamofireObjectMapper
时,所有ITS依赖项都将相应更新。
但是,出于某种原因,您觉得需要手动更新或降级(坏主意)AlamofireObjectMapper
个依赖项之一,您可以直接进入其Cartfile并从{{更改版本号或版本操作1}}到~>
或您可能需要做的任何事情。希望这有帮助!