没有找到目标的伞头,将不会生成模块图

时间:2015-06-08 08:21:41

标签: ios xcode

当我在Xcode 6.3中尝试构建CKCountdownButton作为框架时,它会抱怨

警告:没有找到目标' CKCountdownButton'的伞标题,将不会生成模块图

然后当我在其他项目中导入此框架时,它失败了没有这样的模块' CKCountdownButton'

4 个答案:

答案 0 :(得分:31)

我找到了另一种解决方案, Xcode 提供了一种通过模块映射文件配置指定伞标题的方法。

snapshot

module.modulemap的内容应为:

framework module Foo {
    umbrella header "Bar.h"

    header "other-header.h"

    export *
    module * { export * }
}

答案 1 :(得分:29)

在框架中添加CKCountdownButton.h修复了此问题。

我认为伞标题是指与Framework

相同名称的头文件

答案 2 :(得分:8)

该目标需要至少有一个Swift文件。检查是否已将Swift文件添加到目标

答案 3 :(得分:0)

框架的自定义模块映射[About]

创建一个umbrella file-任何.h文件(或为框架目标自动生成的<product_name>.h

将所有可供消费者使用的.h文件添加到umbrella file

#import "header_1.h"
#import "header_2.h"

umbrella file和标头文件.h(标头_1.h,标头_2.h)添加到Headers部分[can not do it] [public target membership]

Select `.h` file -> Select File Inspectors Tab -> Target Membership -> Select the target and make it **public**
//or
Project editor -> select a target -> Build Phases -> Headers -> add files to the **public** zone

创建一个.modulemap文件

framework module product_name {
    umbrella header "<umbrella_name>.h"
    export *
}

选中Defines Module

Build Settings -> Defines Module -> YES

指定Module Map File

Build Settings -> Module Map File -> relative path to `.modulemap` file