【发布时间】:2015-06-19 16:13:36
【问题描述】:
用 Xcode 6.3 更新后,我发现我的项目有些奇怪。
以下代码导致解析问题,显示“无法构建模块'AgendaFramework'”,AgendaFramework 是我为 ios8 定制的嵌入式框架:
@import MyEmbededFramework;
错误标记如下所示:
在索引未构建期间提出了问题。整个构建可以成功执行而不会出现任何错误或警告。我可以构建、存档、在设备上运行、部署、提交到 App Store。
但是,当我编辑属于扩展的类时,会出现错误标记。显式链接到嵌入式框架的扩展(小部件)。 (我知道当我使用@import 语句时我不必这样做。)
在这种状态下,我收不到任何有效的内容助手,很烦人。
我用旧样式替换import语句后,问题就消失了:
#import <AgendaFramework/AgendaFramework.h>
我有几个其他项目与导致此问题的项目具有非常相似的拓扑,但它们没关系。只有一个项目会导致此问题。我比较了每个细节构建设置,我找不到任何线索。
我试过了:
- 删除派生数据
- 完全清洁
- 重启
欢迎提供任何线索。谢谢!
【问题讨论】:
-
你真的创建了iOS8动态框架吗???
-
它仍然适用于构建。该问题仅在实时索引时出现。
-
清理构建文件夹(CMD+Option+Shift+K)并删除派生数据文件夹,重启Xcode,重启Mac
-
我也有同样的问题。 #import
有效,而 @import Framework;说无法构建模块。有趣的是,该项目确实构建并成功运行;错误消息总是在构建后出现。 -
我的框架位于主 .xcodeproj 文件的子文件夹中。我之前为所有 3rd 方框架使用了该子文件夹,并在设置中递归地添加了该搜索路径,因此我不必为我添加的每个框架都弄乱很多额外的搜索路径。不知何故,这不适用于@import,所以我只是将框架添加到与 .xcodeproj 文件相同的文件夹中,没有子文件夹或任何东西。然后事情开始起作用了——没问题。