我是 Kiwi 和 Cocoapods 的新手。我已经启动并运行了 Cocoapods,但是即使在我开始使用 Kiwi 之前,我的测试目标也失败了,错误如下:

Undefined symbols for architecture i386:
  "_CGRectZero", referenced from:
  -[EGOImageButton initWithPlaceholderImage:delegate:] in libPods.a(EGOImageButton.o)

这是我的 Podfile:
platform :ios
dependency 'RestKit/Network', '~>0.10.0'
dependency 'RestKit/UI', '~>0.10.0'
dependency 'RestKit/ObjectMapping', '~>0.10.0'
dependency 'RestKit/ObjectMapping/XML', '~>0.10.0'
dependency 'RestKit/ObjectMapping/JSON', '~>0.10.0'
dependency 'RestKit/ObjectMapping/CoreData', '~>0.10.0'
dependency 'SVProgressHUD'
dependency 'EGOImageLoading'
dependency 'OHAttributedLabel'
dependency 'SFHFKeychainUtils'

target :test, :exclusive => true do
    dependency 'Kiwi'
end

最佳答案

您必须进行一些基本设置,类似于 Kiwi Wiki 上用于从头安装 Kiwi ( https://github.com/allending/Kiwi/wiki/Guide:-Up-and-Running-with-Kiwi ) 的说明

  • 在 Xcode 中,在应用项目中添加一个名为“test”的单元测试目标(Add Target/Cocoa Touch Unit Test Bundle)
  • 将 Kiwi 引用添加到 PodFile(如上所述)
  • 运行 pod install。
  • 编辑主要目标的架构,将单元测试目标添加到“测试”选项卡(以便您可以执行 cmd-U)
  • 将主目标的可执行文件的路径添加到单元测试目标中的 BundleLoader build设置:例如。 $(BUILT_PRODUCTS_DIR)/Foo.app/Foo
  • 将您的 Kiwi 测试添加到测试目标
  • 关于cocoa-touch - 如何使用 Cocoapods 设置 Kiwi?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10741183/

    10-10 03:08