【发布时间】:2017-11-05 23:25:52
【问题描述】:
我已经将一个应用项目从 ObjC 转换为 Swift。它使用了几个由 Cocoa Pods 管理的 ObjC 框架。
当我尝试构建它时出现错误:
没有这样的模块'Foo'
Foo 文件是一个没有 .m 文件的 ObjC 头文件。它用于将几个其他类绑定到一个导入中(在 ObjC 中)。这是 Foo.h 的外观:
#import <Foo/FooDefines.h>
#import <Foo/FooToken.h>
#import <Foo/FooAccount.h>
#import <Foo/FooAccountPersistenceInformation.h>
#import <Foo/FooAccountUserInformation.h>
#import <Foo/FooSettings.h>
// Authenticators
#import <Foo/FooAuthenticator.h>
#import <Foo/FooAnonymousAuthenticator.h>
#import <Foo/FooUserPasswordAuthenticator.h>
// UI
#import <Foo/FooViewController.h>
#import <Foo/RLoginDialog.h>
#import <Foo/RLogoutDialog.h>
#import <Foo/RAccountSelectionDialog.h>
#import <Foo/RVerificationDialog.h>
#import <Foo/RBuiltinLogoutActionSheet.h>
// Workflows
#import <Foo/RLoginWorkflow.h>
#import <Foo/RVerificationWorkflow.h>
#import <Foo/RLogoutWorkflow.h>
我如何能够在 Swift 类中成功导入它以克服编译时错误?
【问题讨论】:
-
您应该将类添加到“桥接头”中
-
将所有 Objective-C .h 文件导入添加到“$(PROJECT_NAME)-Bridging-Header.h”文件中。请参阅此stackoverflow.com/questions/26096402/… 了解更多信息
-
@suhit 嗯,我已将
#import <Foo/Foo.h>添加到桥接头文件中,但仍然出现相同的错误(清理后)。 -
你能把
文件中的所有导入添加到 Bridging-Header 文件中并尝试
标签: ios objective-c swift xcode cocoapods