我向我的 Xcode 项目添加了一个新的测试目标。我的项目有 Swift 代码和 Objective-C 代码,还有一个桥接头。在将桥接 header 添加到 UnitTesting 的build设置或执行 import MyTarget
后,我收到错误:
failed to import bridging header
我试过:
- 将桥接 header 添加到项目、单元测试和主要目标的build设置。
- 将
defines modules
更改为Yes
。 - 将桥接头文件移动到根文件夹。
我还尝试制作了一个示例项目,该项目构建并运行良好。在这一点上,将我拥有的一切都转移到一个干净的新项目中不是一个选择。
最佳答案
如果你使用CocoaPods作为包管理器,必须设置搜索路径等。给一个简单的方法,
尝试将此添加到您的 Podfile 中:
target 'YourProductTests' do
inherit! :search_paths
# Pods for testing
end
和pod安装
它对我有用。
如果上述解决方案对您不起作用,请尝试手动设置:
单击您的测试目标 -> build设置 -> 选项卡:全部和组合 -> Swift 编译器 - 代码生成 -> Objective-C 桥接 header :添加您的 xxx-bridging-header
勾选“Search Path”,根据
Framework Search Path
、Header Search Paths
、Library Search Path
设置值你的主要目标。可能有些搜索路径在这里丢失了,手动重新添加。
关于ios - 向 Xcode 添加了单元测试目标 - 导入桥接 header 失败不会消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28343493/