删除所有测试 pod 时,Cocoapods 缺少 pod 包含文件

Posted

技术标签:

【中文标题】删除所有测试 pod 时,Cocoapods 缺少 pod 包含文件【英文标题】:Cocoapods missing pod include files when removing all test pods 【发布时间】:2014-12-14 00:52:06 【问题描述】:

我有一个 ios 项目我已经成功地工作了一段时间,其中我使用了几个 pod 作为我的主要目标,然后又使用了几个作为我的测试目标。一切都很顺利。

我使用 pod 进行测试,Expecta,因为我需要测试异步代码。现在 Apple 在最新的 Xcode 中添加了对异步测试的支持,我重写了我的测试以使用它,并希望从我的项目中删除 Expecta。

这样做之后,我的测试不再编译,不再发现有关 pod 头文件的错误。例如,''FacebookSDK/FacebookSDK.h' file not found'错误编译我的一个测试。

我尝试删除所有 Cocoapod 生成的内容并从 pod install 重做,但没有成功。

版本:Cocoapods 0.35.0、Xcode 6.1.1、OS X 10.10.1。

我的新的无测试 Pod 的 Podfile 是:

# Uncomment this line to define a global platform for your project
platform :ios, '7.0'

target 'Meow' do
  pod 'AFNetworking', '2.4.1'
  pod 'TestFlightSDK', '3.0.2'
  pod 'AWSiOSSDKv2/S3', '2.0.11'
  pod 'Facebook-iOS-SDK', '3.20.0'
  pod 'TTTAttributedLabel', '1.10.1'
  pod 'DTCoreText', '1.6.14'
  pod 'ReactiveCocoa', '2.3.1'
end

target 'MeowTests' do

end

删除 MeowTests 目标也没有帮助。

【问题讨论】:

【参考方案1】:

当我输入上述内容时 :) 我找到了 this question;它说要在我的 podfile 中添加一个 link_with 行,并在我的项目的信息窗格中更改配置文件设置。

但是,因为我要从测试目标中删除最后一个 pod,所以我还需要从我的测试目标中删除 CocoaPods 特定的阶段。在 Build Phases 选项卡中,我删除了 Check Pods Manifest.lockCopy Pods Resources

现在我的测试运行良好。 (我可以开始用 Swift 重写它们:))

【讨论】:

以上是关于删除所有测试 pod 时,Cocoapods 缺少 pod 包含文件的主要内容,如果未能解决你的问题,请参考以下文章

如何从 Cocoapods Xcode 7 中删除单个框架 [重复]

如何从本地 cocoapods 缓存中清除或清理特定的 pod

如何让 Cocoapods.org 发现我的 pod 有测试?

Flutter 调试:警告:未安装 CocoaPods。跳过 pod 安装

通过 Cocoapods 中的开发 pod 功能测试静态框架

删除项目中的CocoaPods