Pod 更新对应用程序进行了致命更改

Pod update has fatally altered app

我完美运行的应用程序曾经有一个 Xcode 项目导航器,如下所示。

iOS 10 个要求意味着我必须将 Xcode 升级到 8.1,这意味着将整个 Mac OS 升级到 Sierra,并将整个应用程序转换为 Swift 2.3.

不用说,这导致了错误,其中之一是 PubNub 的问题。然而,除了这个新的构建错误之外,应用程序结构是相同的,并且在处理所有布局问题后一切似乎都正常。

我被要求 运行 以下步骤来尝试解决 PubNub pod 错误,尽管我警告说之前尝试处理 pod 文件导致了最终无法恢复的致命错误。

  1. 在 Xcode 更新后安装所有 iOS 个模拟器
  2. 打开 Xcode 首选项 (Cmd+,) 并导航到“位置”选项卡,其中将显示“DerivedData”文件夹的路径
  3. 单击显示的“DerivedData”路径右侧带箭头的小圆圈以在 Finder 中打开它
  4. 退出Xcode
  5. 删除“DerivedData”文件夹
  6. 清理 CocoaPods(如果与其集成)缓存,在终端中输入: rm -rf ~/Library/Caches/CocoaPods
  7. 从项目根目录(Podfile 所在的位置)运行 在终端中: pod 分解 MyApp.xcodeproj
  8. 从项目根目录(Podfile 所在的位置)中删除Podfile.lock 文件
  9. 从项目根目录(Podfile 所在的位置)运行 在终端中执行此操作:pod update
  10. 启动 Xcode(按 Shift + Cmd + K 以防万一)
  11. 尝试构建项目

完成所有这些之后,我的项目导航器现在看起来像这样。

如您所见,我丢失了很多东西,包括 pod 文件等。据怀疑,我的应用现在受了致命伤。

我的桥接头是红色的,Restkit.h 是红色的,所有 pod 引用都消失了。

我在 Finder 中的项目根目录有 Pods 文件夹和 pod 文件等,但是如果我尝试将文件夹从 Finder 拖到项目中,它们不会像以前那样显示 - 例如,文件夹是蓝色的不是黄色。

我在 Xcode 8.1 和 Cocoapods 1.1.1.

如何恢复我的应用程序?

编辑:如果有帮助,这里是 link 我在 1 月份未解决的问题,这是我最后一次敢于触摸 pod 文件,直到现在。这种情况的后果和以前一样 - 不同的是,在 1 月份我放弃了 2 周的工作,现在我正在考虑放弃 10 个月的工作。

RestKit.h never found in Xcode project

播客文件:

pod 'RestKit', '~> 0.24.0'
pod 'SimpleKeychain'
pod 'AWSS3'
pod 'VideoCore'
pod 'SDWebImage', '~>3.7'
pod 'SVPullToRefresh'
pod 'PubNub', '~> 3.7.11'
pod 'MZFormSheetController'

终端中 pod 更新的结果:

全部更新pods 更新本地规范存储库 执行 master 规范回购的深度提取以提高未来的性能 警告:由于文件太多,跳过了不准确的重命名检测。 CocoaPods 1.2.0.beta.1 可用。 要更新使用:sudo gem install cocoapods --pre [!] 这是我们希望您尝试的测试版本。 有关详细信息,请参阅 https://blog.cocoapods.org and the CHANGELOG for this version at https://github.com/CocoaPods/CocoaPods/releases/tag/1.2.0.beta.1

正在分析依赖关系 [!] 依赖项 RestKit (~> 0.24.0) 未在任何具体目标中使用。 依赖项 SimpleKeychain 未在任何具体目标中使用。 依赖项 AWSS3 未在任何具体目标中使用。 依赖项 VideoCore 未在任何具体目标中使用。 依赖项 SDWebImage (~> 3.7) 未在任何具体目标中使用。 依赖项 SVPullToRefresh 未在任何具体目标中使用。 依赖项 PubNub (~> 3.7.11) 未在任何具体目标中使用。 依赖项 MZFormSheetController 未在任何具体目标中使用。

pod update 日志看来,CocoaPods 找不到任何必须应用库的目标。

你能在你的 Podfile 中尝试这样的事情吗?

target 'YOUR_TARGET_NAME' do
    pod 'RestKit', '~> 0.24.0'
    pod 'SimpleKeychain'
    pod 'AWSS3'
    pod 'VideoCore'
    pod 'SDWebImage', '~>3.7'
    pod 'SVPullToRefresh'
    pod 'PubNub', '~> 3.7.11'
    pod 'MZFormSheetController'
end

不确定它是否会修复您遇到的错误。