XCode 一直忘记导入的框架

XCode keeps forgetting imported Frameworks

我有 Xcode 6.3,使用 Swift,像往常一样导入 Parse 1.7.1 Framework(拖动、复制),并将其设置在一个组中:Frameworks。

我编译了一段时间,一切正常,直到编译器不再识别这句话:

import Parse

它给我错误:

No such module 'Parse'

一个解决方法是删除框架并重新复制它,但一段时间后它开始变得烦人,我真的很想知道原因。

我只是在此期间编写代码和构建(偶尔创建新的 swift 文件),所以我无法解释为什么会这样。

我今天刚刚在我的项目中解决了同样的问题。我在一个 swift 项目中导入了我的 obj-c 框架并且它工作了一段时间,然后 xcode 似乎忘记了它导致了你遇到的同样的错误。

apple docs

我通过引用构建设置中的桥接 header 修复了它。

Under Build Settings, make sure the Objective-C Bridging Header build setting under Swift Compiler - Code Generation has a path to the header. The path should be relative to your project, similar to the way your Info.plist path is specified in Build Settings. In most cases, you should not need to modify this setting.

我刚刚在表示桥接 header 的字段中输入了桥接 header folderName/xxxx-BridgingHeader.h 的名称,一切都恢复正常了。

如果您的目标是 iOS 8 及以上,您可以告诉 Cocoapods 使用框架,方法是将

use_frameworks!

在您的 Podfile 中,例如:

use_frameworks!
platform :ios, '8.0'

# Parse
pod 'Parse', '~> 1.7'

我可以通过这样做来解决同样的问题。