You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

手动添加Firebase SDK后提示No such module 'FirebaseMessaging'的原因

导致“No such module 'FirebaseMessaging'”的常见原因及解决方向

从你提供的Package.swift来看,问题主要集中在依赖配置和本地包结构上,具体原因可能是以下几点:

  • 本地依赖的FirebaseMessaging不是合法Swift Package
    你用.package(path: "Sources/FirebaseMessaging")引入本地路径,但Swift Package Manager(SPM)要求被引用的本地目录必须是完整的Swift Package——也就是包含自己的Package.swift文件,且该文件中声明了名为FirebaseMessaging的product。如果只是把FirebaseMessaging的源码文件直接放在这个目录下,没有正确的包配置,SPM无法识别它为可依赖的模块。

  • 依赖引用方式错误(若想使用官方FirebaseMessaging)
    如果目标是集成官方FirebaseMessaging SDK,不应使用本地路径引用,而是通过官方仓库URL添加依赖。正确的依赖配置应为:

    dependencies: [
        .package(url: "https://github.com/firebase/firebase-ios-sdk.git", from: "10.0.0")
    ],
    

    然后在target依赖中指定.product(name: "FirebaseMessaging", package: "firebase-ios-sdk")(注意package名称是仓库对应的名字,不是模块名)。

  • 本地路径不正确
    确认Sources/FirebaseMessaging路径确实存在于项目根目录下,路径拼写无错误。若路径不存在或写错,SPM找不到对应依赖包,就会提示模块不存在。

  • product名称不匹配
    若使用本地自定义的FirebaseMessaging包,需检查该包的Package.swift中声明的product名称是否为FirebaseMessaging,如果名称不一致,target依赖里的.product(name: ...)无法匹配到对应模块。

你还可以尝试以下操作排查:

  1. 清理项目缓存:执行swift package clean后重新构建。
  2. 检查本地FirebaseMessaging目录结构,确认它符合SPM的包规范。

内容的提问来源于stack exchange,提问作者Dipon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 07:10:05