【问题标题】:Category not found in Cocoapods library在 Cocoapods 库中找不到类别
【发布时间】:2014-03-08 15:37:10
【问题描述】:

我正在发布我的 CocoaPods 库的新版本。在这个版本中,我包含了UIDevice-Hardware.h 类别。

我知道使用-ObjC 标志在静态库中导入类别。在Build Phases -> Copy Headers 中,UIDevice-Hardware.h 在“项目”中。

当我运行pod lib lint --no-clean 时,我以为-ObjC 标志会被设置,但我得到了错误:

- ERROR | [xcodebuild]    
TCBlobDownload/TCBlobDownload/TCBlobDownload/TCBlobDownloader.m:16:9: fatal error: 
'UIDevice-Hardware.h' file not found

Pods project available at `/private/tmp/CocoaPods/Lint/Pods/Pods.xcodeproj` for inspection.

所以我在.podspec 中添加了这一行:

spec.xcconfig = { 'OTHER_LDFLAGS' => '-ObjC -all_load -force_load' }

是的,所有三个标志,只是为了确定。

我仍然遇到同样的错误。我检查了上述Pods.xcodeproj,在它的目标中,Other Linker Flags 是空的,没有-ObjC 或其他任何东西。但是.xcconfig 文件在.podspec 中定义了我的标志...我不知道从哪里开始。

当我将它导入到我设置标志的测试项目中时,该库构建良好。如何使用 CocoaPods 实现 lint?

【问题讨论】:

  • 你的 glob 是否选择了头文件来说明要在 pod 中包含哪些文件?
  • @Paul.s 感谢您的评论,它帮助我解决了这个问题。由于我将此类别放在子文件夹中,因此我将 spec.source_files = 'TCBlobDownload/TCBlobDownload/*.{h,m}' 替换为 TCBlobDownload/TCBlobDownload/**/*.{h,m} 并且它已修复。哑的。谢谢!

标签: objective-c xcode cocoapods


【解决方案1】:

您的 glob 是否选择了头文件来说明要包含在 pod 中的文件?听起来规范根本不包括该文件。

【讨论】:

    猜你喜欢
    • 2016-10-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-22
    • 2014-07-27
    • 1970-01-01
    • 1970-01-01
    • 2016-07-25
    相关资源
    最近更新 更多