【发布时间】:2015-01-30 01:23:05
【问题描述】:
在我的 Swift 项目中尝试引用 KIF 时,我遇到了零星的问题。
在我执行“清理”后,我的项目停止编译,并且一直给我错误:No such module 'KIF'
这是我的 KIF 的 cocoapods 文件条目:
target 'MyProjectTests', :exclusive => true do
pod 'KIF', '~> 3.0', :configurations => ['Debug','QA']
end
(这是 KIF's readme 推荐的 cocoapods 配置。)
我可以通过将上面的 cocoapods 条目更改为:
pod 'KIF', '~> 3.0'
但项目在尝试运行时崩溃:
dyld: Library not loaded: @rpath/XCTest.framework/XCTest
Referenced from: /Users/albertbori/Library/Developer/CoreSimulator/Devices/29008343-5A97-47FB-B0E6-66D18A331BDA/data/Containers/Bundle/Application/C0E16F80-9A08-4228-96F7-8A24F08AB066/MyProject.app/Frameworks/KIF.framework/KIF
Reason: image not found
然后,如果我将其切换回原始配置并执行pod install,则使用 KIF 进行测试再次起作用...
如何正确引用 KIF 以确保使用该框架进行稳定的构建和开发?
【问题讨论】:
-
查看 KIF 的 pod 规范,这似乎是因为它们将
FRAMEWORK_SEARCH_PATHS覆盖为自定义值。我认为其中不包括 XCTest。 -
是的,我认为这是因为他们预计您将使用
target 'MyProjectTests', :exclusive => true do条件将其排除在部署之外。我只是无法在该条件下编译它。