更新我的 pod 导致 GoogleDataTransport Umbrella 标头出现错误

Posted

技术标签:

【中文标题】更新我的 pod 导致 GoogleDataTransport Umbrella 标头出现错误【英文标题】:Update my pod causes error in GoogleDataTransport Umbrella header 【发布时间】:2019-10-24 11:56:52 【问题描述】:

我刚刚使用“pod update”命令更新了我的 pod,并且我使用了 Firebase pod。 我添加了新的 pod,然后当我编译我的项目时,出现了几个错误,如下所示:

- Umbrella header for module 'GoogleDataTransport' does not include header 'GDTEventDataObject.h'
- Umbrella header for module 'GoogleDataTransport' does not include header 'GDTClock.h'
...
...

我 - 使用 swift5 - Xcode 11.0 - macOS 10.15

【问题讨论】:

在终端中尝试“sudo gem install cocoapods”命令。如果它不起作用,请尝试“sudo gem install -n /usr/local/bin cocoapods” 错误不在 pod 中 .. 它是在我更新了包括 firebase 在内的 pod 之后出现的 【参考方案1】:
rm -rf ~/Library/Developer/Xcode/DerivedData/
pod deintegrate
pod update

GoogleDataTransport 引用在旧 pod 版本中挥之不去

【讨论】:

我是新手,但这个建议对我有用:flutter clean 然后flutter run 上帝保佑你! ???【参考方案2】:

补充 Paul 的答案:我还必须清除我的 Pod 缓存。

rm -rf ~/Library/Developer/Xcode/DerivedData/
rm -rf ~/Library/Caches/CocoaPods/
pod deintegrate
pod update

如果你正在使用 Flutter,你可能也想清理 Flutter。

flutter clean

【讨论】:

使用flutter,flutter clean是必须的,否则即使运行之前的命令也会出现同样的错误 只是 $ flutter clean 在添加 Podfile firebase 分析、crashanalytics 时帮助了我【参考方案3】:

这对我有用

# clear cached artifacts/dependencies
rm -rf ~/Library/Developer/Xcode/DerivedData/
rm -rf ~/Library/Caches/CocoaPods/
rm -rf clone/ios/Pods/
pod cache clean --all

# clear flutter - skip the next 3 lines if you're not using flutter
flutter clean
flutter pub get
cd ios

# run pod install
rm Podfile.lock
pod install --repo-update

【讨论】:

以上是关于更新我的 pod 导致 GoogleDataTransport Umbrella 标头出现错误的主要内容,如果未能解决你的问题,请参考以下文章

升级了xcode9.3 导致pod里的kissxml报错

Kubernetes - 滚动更新杀死旧 pod 而不启动新 pod

Firebase pod 更新未更新

卸载 pod 后无法进行 pod 更新

将新 Pod 安装到项目中后的问题

Pod 无法更新或安装 - Dart/Flutter