通过 Cocoapods 安装 RestKit 0.20.0 后基础类型未知

Posted

技术标签:

【中文标题】通过 Cocoapods 安装 RestKit 0.20.0 后基础类型未知【英文标题】:Foundations types unknown after installing RestKit 0.20.0 via Cocoapods 【发布时间】:2013-04-29 09:18:50 【问题描述】:

我一直在寻找答案,但找不到有类似问题的人。

我已经在我的项目中安装了 RestKit 0.20.0,使用推荐的方法(cocoapods),带有以下 Podfile:

platform :ios, '5.1' 
pod 'RestKit', '~> 0.20.0'

我现在的问题是找不到所有 Foundation(和 UIKit)类型。以下是几个例子:

.../Block.h:11:20: Cannot find interface declaration for 'UIView', superclass of 'Block'
.../Block.h:14:38: Unknown type name 'UIImageView'
.../Block.h:28:23: Unknown type name 'NSInteger'

我已经尝试了此页面上的所有提示:http://docs.cocoapods.org/guides/integrating_a_project.html

另外,值得一提的是,我可以通过 Cocoapods 在一个空的新项目中成功安装 Reskit(没有编译错误)。我比较了两个项目的 Build 设置,它们是一样的。

感谢您的帮助。

【问题讨论】:

您的“非空旧”项目中似乎缺少一些动态库依赖项,例如 QuartzCore 或 UIKit 感谢您的回复。似乎是这样,但 Foundation、UIKit 和 QuartzCore 实际上处于构建阶段,并在 prefix.pch 文件中导入(并且在我的类中导入并不能解决问题)。 【参考方案1】:

好的,我找到了解决方案,但我仍然不明白问题的根源。

错误实际上只出现在 1 个类(块)中。名称“Block”似乎是因为将类重命名为其他名称解决了问题(删除类并重新创建它是不够的,重命名是必要的)。

我不明白的是,这种情况下的常见错误是“重复符号”。

【讨论】:

以上是关于通过 Cocoapods 安装 RestKit 0.20.0 后基础类型未知的主要内容,如果未能解决你的问题,请参考以下文章

错误:“沙箱与 Podfile.lock 不同步...”在使用 cocoapods 安装 RestKit 后

安装RestKit时,Cocoa Pods不兼容的字符编码[重复]

通过 CocoaPods 在 github 上使用 Restkit 的一个分支?

使用cocoapods的restkit项目集成错误

RestKit 0.20.0-pre3 错误-[NSManagedObjectContext saveToPersistentStore:]:无法识别的选择器发送到实例

在 Mac 10.12 上使用哪个 cocoapods 版本,如果 Restkit 是依赖项