2013-09-26 171 views
4

使用吊艙我想用兩個吊艙 - JGAFImageCache和ADNKit - 指定不同的版本AFNetworking的。這裏是我的Podfile:與衝突的AFNetworking依賴

platform :ios, '7.0' 
pod 'AFNetworking' 
pod 'ADNKit' 
pod 'JGAFImageCache' 
pod 'DerpKit' 
pod 'SVProgressHUD' 
pod 'SSKeychain' 
pod 'iOS7Colors', '~> 2.0.0' 

當運行pod install,我得到這個消息:[!]

ADNKit(1.3.1)試圖通過Podfile,AFNetworking(激活AFNetworking (~> 1.3.0)', but already activated version 2.0.0-RC3' 2.0.0-RC3),AFNetworking /核心(2.0.0-RC3),AFNetworking /核心(2.0.0-RC3),AFNetworking /核心(2.0.0-RC3),和AFNetworking /核心(2.0.0-RC3 )。

卸下AFNetworking並且在此在ADNKit結果依靠v1.3.0:[!]

JGAFImageCache(1.1.0)試圖通過ADNKit(1.3.1),以激活AFNetworking (~> 1.2.0)', but already activated version 1.3.3' 。

我很樂意與v1.3.1合作;我不需要最新版本的AFNetworking。

如何獲得JGAFImageCache和ADNKit停止戰鬥在其AFNetworking的版本使用?

回答

6

顯然,最好的辦法是將文件與開發商的問題用最新的依賴關係。問題是,這些莢依靠AFNetworking的API不改變,因此,如果您嘗試使用更高版本以及一些API已經被去除可能存在的問題。

另一種方法是到餐桌的回購,然後讓他們使用的是相同的依賴都改變podfiles內依賴自己。然後,你只需指出你的應用程序的podfile從你的分叉回購中安裝它們。這可能會破壞一些東西,所以你必須自己檢查一下,這顯然不是一個好的長期解決方案。

pod 'ADNKit', :git => 'https://github.com/yourUsername/ADNKit.git' 
+0

+1:分叉回購並解決依賴性差異。隨着新變化的發生,您隨後可以隨時從'上游'進入您的分叉。 –

+0

我很害怕這將是解決方案。 :) 謝謝(你的)信息! – user2730990