XCode一直忘记导入的Frameworks

cdu*_*uet 6 xcode frameworks ios swift

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

我编译,一切都运行良好一段时间,直到编译器不再识别这句话:

import Parse
Run Code Online (Sandbox Code Playgroud)

它给了我错误:

No such module 'Parse'
Run Code Online (Sandbox Code Playgroud)

一种解决方法是删除框架并再次复制它,但一段时间后它开始变得烦人,我真的想知道原因.

我只是在此期间编码和构建(偶尔会创建新的swift文件),所以我无法解释为什么会发生这种情况.

asl*_*nci 5

如果你的目标是iOS 8以及以上,你可以告诉Cocoapods使用框架,通过推杆

use_frameworks!
Run Code Online (Sandbox Code Playgroud)

在你的Podfile,像这个例子:

use_frameworks!
platform :ios, '8.0'

# Parse
pod 'Parse', '~> 1.7'
Run Code Online (Sandbox Code Playgroud)

这样做我可以解决同样的问题.


Gar*_*ret 4

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

苹果文档

我通过引用构建设置中的桥接标头来修复它。

在“构建设置”下,确保“Swift 编译器 - 代码生成”下的 Objective-C 桥接标头构建设置具有指向该标头的路径。该路径应该相对于您的项目,类似于在构建设置中指定 Info.plist 路径的方式。在大多数情况下,您不需要修改此设置。

我刚刚在声明桥接标头的字段中输入了桥接标头的名称folderName/xxxx-BridgingHeader.h,一切又恢复正常了。