【发布时间】:2016-02-02 22:00:58
【问题描述】:
我正在更新我的应用程序和一个公共库(动态框架)。曾经是作为 Xcode 子项目的静态库,现在是包含 swift 代码的动态框架。
在编写我的应用程序代码时,我看到了一些编译器警告。目前,它们只是警告。
在我的应用程序的 MainViewController 中,我包含了一个用 swift 编写的文件。所以这有一个 App-swift.h 的导入。在这个自动生成的 App-swift.h 中,有一段:
#if defined(__has_feature) && __has_feature(modules)
@import UIKit;
@import my_framework;
#endif
在这个“my_framework”内部,我有一个关于各种文件的类别方法,例如NSObject+my_framework.h
现在,我收到 MainViewController.m 的编译器警告,提示“接口 'NSObject' 上的类别 'my_framework' 的重复定义”。下拉列表提供了两个定义的位置。一个位置是我的框架内的实际类别头文件。编译器通过它被包含在 pch 文件中来“看到”这个位置。另一个位置在“@import my_framework”行直接链接到我的 App-swift.h 文件。
有什么办法可以避免这个警告吗?
【问题讨论】:
标签: ios objective-c xcode swift xcode7