使用CocoaPods在框架之间共享依赖关系而无需复制类'定义

时间:2017-12-10 20:03:54

标签: ios firebase cocoapods ios-frameworks

我目前有2个可部署的框架。相同的应用程序,两个面孔:客户端和供应商。

大多数数据模型类和一些视图完全相同。所以我创建了另一个名为" Common"的框架。在Firebase和Crashlytics出现之前,我使用Common作为客户端和供应商框架的依赖项没有问题。

我有一些代码,在两个框架中都是相同的。所以常见的是我想去的方式。但是,当使用Cocoapods时,这些库将有两个定义,Xcode日志显示Class <<SomeFirebaseClass>> is implemented in both <<LONG CLIENT PATH>> and <<LONG COMMON PATH>>. One of the two will be used. Which one is undefined.,并且issue出现。

我的Pod文件:

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '10.0'
workspace 'Application'
use_frameworks!

# ignore all warnings from all pods
inhibit_all_warnings!

abstract_target 'CommonPods' do
  pod 'ChameleonFramework/Swift'
  pod 'Fabric'
  pod 'Crashlytics'
  pod 'Alamofire', '~> 4.5'
  pod 'SwiftyJSON'
  pod 'Firebase/Core'
  pod 'Firebase/Auth'
  target 'Attendant' do
    project 'Attendant/Attendant'
  end
  target 'Client' do
    project 'Client/Client'
  end
end

我在CocoaPods的存储库中发现了一些问题,但到目前为止还没有修复。

我的问题是:我该如何做到这一点?如果我不能,那么实现接近这一目标的最佳方式是什么?

0 个答案:

没有答案