Cocoa Pods导入问题

时间:2013-07-09 22:57:35

标签: ios cocoapods

我正在使用Cocoa Pod http://cocoapods.org/来获取项目中的许多库。

我已经通过Cocoa Pods下载了ShareKit,现在我想修改ShareKit库中的几个类。我的项目中有帮手。所以我想在ShareKit中使用这个帮助器,但是我不能将任何类导入到ShareKit类中。我认为当找到类时,它与不同的项目相关联。 ShareKit类在Pods项目中,我的帮助程序类在我的项目中。所以我如何在这种情况下将我的类导入一些Pods库,例如导入ShareKit类。

1 个答案:

答案 0 :(得分:0)

ShareKit podspec使用subspecs,允许维护人员将较大的库的各个部分分隔成单独的包含,这样您就不必拥有不需要的部分。例如,在ShareKit规范中,它们将服务分开

s.subspec 'Evernote' do |evernote|
  evernote.source_files = 'Classes/ShareKit/Sharers/Services/Evernote/**/*.{h,m}'
  evernote.dependency 'Evernote-SDK-iOS', "~> 1.2"
  evernote.dependency 'ShareKit/Core'
end

s.subspec 'Facebook' do |facebook|
  facebook.source_files   = 'Classes/ShareKit/Sharers/Services/Facebook/**/*.{h,m}'
  facebook.dependency 'Facebook-iOS-SDK',"~> 3.5"
  facebook.dependency 'ShareKit/Core'
end

因此,如果您只想要支持Evernote,那么您也不必包含Facebook。这意味着在你的Podfile中你必须指定你想要的子规格。

pod 'ShareKit/Core'
pod 'ShareKit/Facebook'

这将包含您需要的文件。只有pod 'Sharekit'不会。您可以在repo~/.cocoapods/master/ShareKit/2.3/ShareKit.podspec

中查看所有可用的子规格