ios – CocoaPods podspec lint failure – 找不到文件

我正在尝试分发我的pod,但我遇到了验证问题.

当我想要对付我的.podspec时,我得到了:

- ERROR | [iOS] [xcodebuild]  path/to/my/source/file.m:14:9: Fatal error: 'keyvalueObjectMapping/DCkeyvalueObjectMapping.h' file not found

我尝试使用不同的变体保留其框架的路径

s.preserve_paths = 'keyvalueObjectMapping.framework/*'

要么

s.preserve_paths = '${PODS_ROOT}/vendor/keyvalueObjectMapping/keyvalueObjectMapping.framework'

&安培;其他变化,但这样我又得到一个错误

- ERROR | [iOS] The `preserve_paths` pattern did not match any file.

我还尝试过其他一些其他问题,比如:

s.xcconfig = { 'HEADER_SEARCH_PATHS' => '"${PODS_ROOT}/vendor/keyvalueObjectMapping/keyvalueObjectMapping.framework"','FRAMEWORK_SEARCH_PATHS' => '"$(PODS_ROOT)/vendor/keyvalueObjectMapping/*"' }
  s.framework = 'keyvalueObjectMapping'

该项目使用Xcode5& amp;使用xcodebuild和它的认设置,我只有在为Cocoapods验证它时才会遇到此问题.

解决方法

我遇到了这个问题,试图创建一个自定义Podspec并添加 RevMobHeyzap SDK作为依赖项.

我一直收到以下错误

- ERROR | [iOS] [xcodebuild]  MyProject/MyProjectSubDir/AnotherDir/CustomAd.h:10:9: Fatal error: 'RevMobAds/RevMobAds.h' file not found
- ERROR | [iOS] [xcodebuild]  MyProject/MyProjectSubDir/AnotherDir/FacebookController.m:18:9: Fatal error: 'RevMobAds/RevMobAds.h' file not found

然后,当我为RevMob指定FRAMEWORK_SEARCH_PATHS时,我会得到相同的错误,但是对于heyzap的SDK.

对我来说,解决方案是创建一个子规范并为每个SDK指定搜索路径,从而给我带来问题.这里:

s.subspec "heyzap" do |ss|
    ss.dependency "heyzap","~> 6.4.4"
    ss.xcconfig = { "FRAMEWORK_SEARCH_PATHS" => "$(PODS_ROOT)/heyzap"}
end

s.subspec "RevMob" do |ss|
    ss.dependency "RevMob","~> 7.4.8"
    ss.xcconfig = { "FRAMEWORK_SEARCH_PATHS" => "$(PODS_ROOT)/RevMob"}
end

我的pod规格lint现在运行&构建没有错误.

相关文章

UITabBarController 是 iOS 中用于管理和显示选项卡界面的一...
UITableView的重用机制避免了频繁创建和销毁单元格的开销,使...
Objective-C中,类的实例变量(instance variables)和属性(...
从内存管理的角度来看,block可以作为方法的传入参数是因为b...
WKWebView 是 iOS 开发中用于显示网页内容的组件,它是在 iO...
OC中常用的多线程编程技术: 1. NSThread NSThread是Objecti...