Swift框架仅在清理后才能构建

时间:2018-11-01 20:58:47

标签: ios swift xcode

所以我有一个名为MyAuth的框架,它构建良好,当我将.framework文件导入其他应用程序时,一切正常。但是,直到我清理之后,项目才会每隔第二次构建一次。

我得到的错误是Umbrella header 'MyAuth.h' not found,它指向一个看起来像这样的module.modulemap文件:

framework module MyAuth {
    umbrella header "MyAuth.h"    <- Error on this line

    export *
    module * { export * }
}

module MyAuth.Swift {
    header "MyAuth-Swift.h"
    requires objc
}

但是头文件确实存在,并且位于项目的根目录中。

现在,如果我进行清理然后再次构建,它将成功,但是每次我要构建可以正常工作的项目时,都必须清理构建文件夹,但这并不理想。

这会发生什么原因吗?

2 个答案:

答案 0 :(得分:0)

检查设备和模拟器是否是Fat框架

答案 1 :(得分:0)

好的,这需要很长时间才能弄清楚。

基本上在标头搜索路径和库搜索路径中,我以递归方式搜索$(SRCROOT),并且将构建目录设置为在项目目录中进行。这意味着在每次构建后,由于它已包含在$(SRCROOT)中,因此它将搜索Build目录。

更改了我的搜索路径,现在每次构建都很好。