首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >构建失败:没有这样的模块'KIF‘

构建失败:没有这样的模块'KIF‘
EN

Stack Overflow用户
提问于 2015-01-30 01:23:05
回答 1查看 1K关注 0票数 1

当我尝试在Swift项目中引用KIF时,我一直有一个零星的问题。

我的项目在我做了一个“清理”之后停止了编译,并且一直给我错误:No such module 'KIF'

以下是KIF的cocoapods文件条目:

代码语言:javascript
复制
target 'MyProjectTests', :exclusive => true do
    pod 'KIF', '~> 3.0', :configurations => ['Debug','QA']
end

(这是KIF的自述推荐的cocoapods配置。)

我可以通过将cocoapods条目从上面更改为:

代码语言:javascript
复制
pod 'KIF', '~> 3.0'

但是,该项目在试图运行时崩溃:

代码语言:javascript
复制
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以确保该框架的稳定建设和发展?

EN

回答 1

Stack Overflow用户

发布于 2015-01-30 03:21:17

在将本期发布在CocoaPods问题跟踪器上之后,基莱夫帮助我意识到,我无意中是在双链接豆荚。

下面是他的拉力请求来解决我创建的一个示例项目上的问题。

总之,如果希望同时链接根项目和测试项目,但是有条件地向测试目标添加一个额外的结束符,则Podfile应该如下所示:

代码语言:javascript
复制
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'

use_frameworks!

pod 'MBProgressHUD', '~> 0.8'
pod 'Locksmith'

target 'catch22Tests' do
  pod 'KIF', '~> 3.0'
end

在这种情况下,您不希望使用:link_with 'catch22', 'catch22Tests',否则它将链接catch22Tests两次。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28227753

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档