如何修复找不到 cocoapod .modulemap 文件

Kau*_*med 26 cocoapods swift xcode10.2

当我尝试构建我的项目时,我收到一个编译时错误,指出无法找到我的 pod 的“模块映射文件”,并且我缺少“SwiftShimes”模块。

这很奇怪,因为当我安装 pod 时,我所有的模块映射文件都在它们应该在的位置。

我正在使用 Xcode 10.2 和 Cocoapods 1.6.1。

我已经尝试了以下 ->

  • 从我的项目中分解 cocoapods
  • 清理项目
  • 删除了 ModuleCache 和 DerivedData
  • 重新启动我的电脑

这是我遇到的错误类型->

Module map file '/Users/kaunamohammed/Library/Developer/Xcode/DerivedData/OutNow-gxdxvzwmnijmrlajtbtyclkhrgqs/Build/Products/Debug-iphoneos/CodableFirebase/CodableFirebase.modulemap' not found

Run Code Online (Sandbox Code Playgroud)

我希望我的项目能够正确构建,但事实并非如此,我不知道还能做什么。

这就是我的 Podfile 的样子

platform :ios, '10.0'

workspace 'OutNow'

target 'OutNow' do
  use_modular_headers!
  #Pods for OutNow
  pod 'Instabug'
  pod 'SwiftMessages'
  pod 'CodableFirebase'
  pod 'Firebase/Core'
  pod 'Firebase/Auth'
  pod 'Firebase/Storage'
  pod 'Firebase/Firestore'
  pod 'Firebase/Messaging'
  pod 'Firebase/DynamicLinks'
  pod 'MarqueeLabel/Swift'
  pod 'RxSwift', '4.4.2'
  pod 'RxCocoa', '4.4.2'
  pod 'Kingfisher', '5.3.1'
  pod 'InstantSearchClient', '6.0'
  pod 'CoordinatorLibrary', '1.0.5'
  pod 'UIScrollView-InfiniteScroll', '1.1.0'

  target 'OutNowTests' do
    inherit! :search_paths
    # Pods for testing
  end

end
Run Code Online (Sandbox Code Playgroud)

Eri*_*ner 75

如果它可以帮助其他人,我能够以不同的方式解决这个问题。我不小心打开了我的.xcproject而不是我的.xcworkspace. 当我打开正确的文件时,错误消失了。

  • 谢谢,这对我来说是解决方案。另外,我必须重新启动 Xcode。 (2认同)

Osc*_*nez 34

我花了一整天的时间试图弄清楚如何解决这个问题。我在 M1 机器上的项目中遇到了问题。

我在 Xcode 中启用了“使用 Rosetta 打开”选项并为我工作。

操作方法如下:
打开 Finder --> 应用程序 --> 右键单击​​“Xcode” --> 获取信息 --> 选中“使用 Rosetta 打开”

  • 这仍然是 2022 年中期的唯一解决方案吗,Xcode 应该可以与原生架构配合使用,不是吗?遗憾的是在罗塞塔运行它,感觉就像我无法充分利用我的机器。 (11认同)

Ton*_*oei 28

我自己解决了这个问题。我可以告诉你我做了什么。不确定哪些步骤完全做到了,但以下是所有步骤:

  1. 将 Podfile 的内容复制到安全的地方
  2. 跑: pod cache clean --all
  3. 从目录中删除“Podfile”文件。
  4. Xcode:产品>清理构建文件夹
  5. 运行:pod init。一个新的“Podfile”文件被添加到目录中
  6. 开始将原始 Podfile 的一部分添加到此文件中
  7. 跑: pod install
  8. 尝试再次构建您的项目

就我而言,我认为use_frameworks!“Podfile”中的行起到了作用。

希望这对你们有帮助!

  • 我刚刚做了步骤 2、4 和 7,它对我有用。谢谢! (14认同)

Jos*_* B. 19

仅当我想制作存档时才遇到此问题。另一方面,调试工作正常。一段时间后,我注意到最小 iOS 版本在我的 Target、Project 和 Podfile 最小 iOS 版本之间有所不同。将它们全部同步到相同的值(iOS 11)后,Xcode 为我提供了验证项目设置 - 更新到我接受的推荐设置选项,我能够存档我的项目。

  • 谢谢。将 pod 文件中的 iOS 版本更新后,目标和项目为相同的值。效果很好。 (4认同)
  • 我在 React Native 中使用最新的 Stripe pod 也遇到了同样的问题 - 我已经在 Podfile 中提高了目标,安装了所有 pod,应用程序在调试中运行良好,但我无法存档它,因为我没有更新最小 iOS项目设置中的版本。现在工作正常! (2认同)

ahm*_*ira 12

只需检查您是否使用 Xcode 打开了.xcworkspace文件而不是 .xcproject 文件。


The*_*ech 6

OTHER_SWIFT_FLAGS我通过删除自定义标志来解决这个问题Swift Compiler - Custom Flags

OTHER_SWIFT_FLAGS = "$(inherited) -D COCOAPODS -Xcc -fmodule-map-file=\"${PODS_ROOT}/modulePath/moduleName.modulemap\"";