【问题标题】:Xcode error: Missing required module 'Firebase'Xcode 错误:缺少必需的模块“Firebase”
【发布时间】:2018-12-10 06:50:07
【问题描述】:

问题:

我有一个动态框架,它使用由 cocoapods 添加的Firebase。我也有应用程序,它使用这个动态框架。但是当我尝试构建项目时,我得到了错误Missing required module Firebase。

我尝试了以下方法:

  • 删除派生数据 + 清理
  • 重新安装 pod
  • 将“导入路径”添加到构建设置(在这种情况下,我在运行时收到错误“库未加载”)

我的 podfile:

target 'Project' do    
  ...
end
target 'Framework' do    
  pod 'Firebase/Core'
  pod 'Firebase/Auth'
end

Framework 被添加到 Embedded binaries 和 Linked Frameworks and Libraries。

【问题讨论】:

  • 您在“其他链接器标志”中看到框架标志吗?
  • @MarmikShah 不,我没有
  • 如果您有一个测试目标,请将其与其他目标上使用的相同 pod 一起添加到 pod 文件中。
  • 你好,有什么新的吗?
  • 你好,你解决了吗?

标签: swift xcode cocoapods static-libraries


【解决方案1】:

对于仍然遇到此问题的任何人,这样做为我解决了问题。 将此添加到您的测试目标构建设置中。

HEADER_SEARCH_PATHS = "${SRCROOT}/Pods/Firebase/CoreOnly/Sources"

Full discussion can be found on firebase GitHub issues.

您可以在 Test Target > Build Settings > Search Paths > Header Search paths 中找到 HEADER_SEARCH_PATHS。

如果您在构建设置中找不到 HEADER_SEARCH_PATHS,请单击“全部”按钮以显示所有设置。

【讨论】:

  • 这对我有用,谢谢。我相信这应该是公认的答案。
  • OP 根本没有询问单元测试。
  • 成功了!谢谢
【解决方案2】:

将以下内容添加到您的测试目标中:

HEADER_SEARCH_PATHS = "${PODS_ROOT}/Firebase/CoreOnly/Sources"

这在 测试目标 > 构建设置 > 标头搜索路径。

【讨论】:

  • OP 没有询问单元测试。
  • 即使他没有提到任何有关测试的内容,但最有可能导致此错误的原因是测试。
【解决方案3】:

添加测试目标后,运行:

pod install

并添加到:

HEADER_SEARCH_PATHS = $(inherited)

为我修复。

在框架搜索路径 pod 上自动放置所有 pod 项目路径。

当然,在最后一个 pod 名称之后添加到 podfile:

target 'TestTargetName' do
  inherit! :search_paths
end

【讨论】:

  • 我需要在此解决方案中添加“${SRCROOT}/Pods/Firebase/CoreOnly/Sources”。
【解决方案4】:

直到

target 'TestTargetName' do
  
    pod 'Firebase/Storage'
  
end

我不确定 firebase 是做什么的,所以我无法运行测试(测试根本不依赖于 firebase)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-03-23
    • 2021-06-18
    • 1970-01-01
    • 2020-09-04
    • 1970-01-01
    • 1970-01-01
    • 2018-04-25
    • 1970-01-01
    相关资源
    最近更新 更多