RestKit 在存档模式下中断构建 - Xcode 8

Posted

技术标签:

【中文标题】RestKit 在存档模式下中断构建 - Xcode 8【英文标题】:RestKit breaks build in archive mode - Xcode 8 【发布时间】:2017-01-13 21:37:31 【问题描述】:

我正在使用 Xcode 8.2.1 和 CocoaPods 1.1.1。我有一个使用 RestKit 0.27 的 ios 应用程序,带有 Objective-C 和 Swift 3 代码。一切都在模拟器和设备上完美地构建和工作,但是在归档它以进行分发时项目不会编译:

/Users/***/MyProject-Bridging-Header.h:16:9:注意:在 /Users/***/MyProject-Bridging-Header.h:16 中包含的文件中: #import "CustomRKObjectRequestOperation.h" ^ /Users/***/Services/CustomRKObjectRequestOperation.h:10:9:错误:找不到“RestKit/RestKit.h”文件 #import ^ :0:错误:无法导入桥接头“/***/MyProject-Bridging-Header.h”

我在这里发现了一个类似的问题:https://forums.developer.apple.com/message/79355#79355,但建议的修复不起作用,可能是因为它适用于 Xcode 7.1。

【问题讨论】:

我最终为我所依赖的每个 RestKit 类而不是整个 包进行了#import "RKObjectManager.h" 样式导入。您也可以尝试@import RestKit; 导入框架。 我从项目的 Swift 部分中删除了所有对 RestKit 的引用(也包括桥接头),并且在引用的第一个非 Apple 框架上归档失败: import Foundation import SwiftyJSON import Moya import Alamofire如果我将 Moya 放在第二位,则以“没有这样的模块 'SwiftyJSON'”中断,以“没有这样的模块 'Moya'”中断。 我编辑了运行方案以使用发布配置,该项目现在没有构建。似乎 pod 中引用的东西在 Release 中内置时不可用。 检查你的项目和构建目标的 Xcode 构建设置,看看你的调试和发布配置有什么不同。特别要检查 HEADER_SEARCH_PATHS。 【参考方案1】:

事实证明,发布配置中的 FRAMEWORK_SEARCH_PATHS 没有对任何 Pods 框架的任何引用。现在一切正常,与 RestKit 无关。

【讨论】:

以上是关于RestKit 在存档模式下中断构建 - Xcode 8的主要内容,如果未能解决你的问题,请参考以下文章

RestKit 框架的 Xcode 存档错误

“为归档而构建”工作,“归档”不

Nextjs 在构建模式下使用 Tailwind 中断布局

Crashlytics 未在“存档”模式下上传符号

Ionic iOS 构建失败,找不到错误存档

xcodebuild 归档失败,CircleCI 上的退出状态为 65