同时使用CocoaPods与框架和静态库

时间:2015-05-07 17:29:37

标签: ios swift frameworks static-libraries cocoapods

我的项目中有 Podfile

platform :ios, '8.0'
use_frameworks!

target 'FunnyApp' do
  pod 'Alamofire', '~> 1.2'
  pod 'SWXMLHash', '~> 1.0'
  pod 'VaultKit', :path => './Frameworks/VaultKit'
  pod 'SessionKit', :path => './Frameworks/SessionKit'
end

只有 VaultKit 是用Objective-C编写的静态库。它有这个podspec:

Pod::Spec.new do |s|
  s.name = 'VaultKit'
  s.version = '0.1'
  s.license = 'MIT'
  s.summary = 'Encryption library'
  s.homepage = 'https://someurl.com'
  s.social_media_url = 'http://twitter.com/greenfish29'
  s.authors = { 'Tomas Sliz' => 'greenfish29@email.com' }
  s.source = { :git => 'git@github.org:greenfish29/vaultkit.git' }

  s.ios.deployment_target = '8.0'

  s.public_header_files = 'VaultKit/VaultKit.h'
  s.source_files = "VaultKit/*.{h,m}" "VaultKit/Models/*.{h,m}"

  s.requires_arc = true
end

我的项目中也有这个记录的桥接标题:

#import <VaultKit/VaultKit.h>

但是当我尝试构建项目时,我收到了这个错误:

  

FunnyApp-Bridging-Header.h:5:9:找不到'VaultKit.h'文件

有什么不对?

1 个答案:

答案 0 :(得分:0)

Cocoapods不支持Frameworks和Static库,也不打算这样做。

参见讨论here

我最后通过使用桥接头来为我的项目使用仅Obj-C库,因为一个我不能没有的重要库只有一个Obj-C版本。

我认为我们至少可以获得对将来使用静态库作为依赖的动态框架的支持。