XCode6: 接收错误"Include of non-modular header inside framework module"
XCode6: Receiving error "Include of non-modular header inside framework module"
我有一个 iOS 应用程序,它由一个应用程序、一堆我的自定义框架和一堆第三方框架组成:
App
MyFramework1
MyFramework2
AFNetworking.framework
Mantle.framework
..
我收到错误 "Include of non-modular header inside framework module",结构如下:
App/AppDelegate.m
#import <MyFramework2/MyFramework2.h>
MyFramework2/MyFramework2.h
#import "MyClass.h"
MyClass.h
#import <Mantle/Mantle.h> <-- Error happens here
MyFramework2 自行构建。
尝试构建 App 失败并在导入 Mantle.h 的行出现错误 "Include of non-modular header inside framework module" 。
如果我在 .m
文件中导入 Mantle.h,这个问题就会消失,但我不能这样做,因为我的 class 继承自 MTLModel
,它是在地幔中定义。
此问题已得到解决 here,但尚未解决 Swift-specific。
有以下建议 (1) 确保所有自定义框架 headers 都是 public。他们是。并且 (2) 转到 "Target" 下的构建设置并将 "Allow Non-modular Includes in Framework Modules" 设置为 YES
。
有谁知道为什么会这样以及如何解决?将 "Allow Non-modular Includes in Framework Modules" 设置为 YES 是否被认为是一种好的做法?为什么这是一个错误?
谢谢。
Select 项目导航器中的 .h 文件。在右侧的目标成员资格区域中,目标旁边有一个下拉菜单。 Select "public" 那里(现在可能选择 "project")。
我有一个 iOS 应用程序,它由一个应用程序、一堆我的自定义框架和一堆第三方框架组成:
App
MyFramework1
MyFramework2
AFNetworking.framework
Mantle.framework
..
我收到错误 "Include of non-modular header inside framework module",结构如下:
App/AppDelegate.m
#import <MyFramework2/MyFramework2.h>
MyFramework2/MyFramework2.h
#import "MyClass.h"
MyClass.h
#import <Mantle/Mantle.h> <-- Error happens here
MyFramework2 自行构建。
尝试构建 App 失败并在导入 Mantle.h 的行出现错误 "Include of non-modular header inside framework module" 。
如果我在 .m
文件中导入 Mantle.h,这个问题就会消失,但我不能这样做,因为我的 class 继承自 MTLModel
,它是在地幔中定义。
此问题已得到解决 here,但尚未解决 Swift-specific。
有以下建议 (1) 确保所有自定义框架 headers 都是 public。他们是。并且 (2) 转到 "Target" 下的构建设置并将 "Allow Non-modular Includes in Framework Modules" 设置为 YES
。
有谁知道为什么会这样以及如何解决?将 "Allow Non-modular Includes in Framework Modules" 设置为 YES 是否被认为是一种好的做法?为什么这是一个错误?
谢谢。
Select 项目导航器中的 .h 文件。在右侧的目标成员资格区域中,目标旁边有一个下拉菜单。 Select "public" 那里(现在可能选择 "project")。