【发布时间】:2017-06-02 06:29:19
【问题描述】:
当我编译应用程序时,我得到一个错误:
无法构建 Objective-C 模块“Firebase”
这个错误出现在我的文件swift的import Firebase中。
【问题讨论】:
标签: firebase swift3 xcode8 ios10
当我编译应用程序时,我得到一个错误:
无法构建 Objective-C 模块“Firebase”
这个错误出现在我的文件swift的import Firebase中。
【问题讨论】:
标签: firebase swift3 xcode8 ios10
只有一种方法可以解决这个问题。
~/Library/Developer/Xcode/DerivedData的项目临时文件
ProjectName.xcworkspace
Podfile.lock文件和Pods文件夹pod install。ProjectName.xcworkspace 文件并构建。【讨论】:
~/Library/Developer
~/User/ME/Library/... 下,图书馆文件夹被隐藏了。 (使用 Shift+cmd+(dot) 使其可见)
xCode v12
Build (⌘ + B) 为我工作。
【讨论】:
我正在使用 Swift 4 和 Xcode 9。我所要做的就是选择 FirebaseCore 方案。
在 Xcode 上:
Product->Scheme->FirebaseCore.
如果您没有 FirebaseCore,请转到 Manage Schemes 并选择它。然后再试一次。
【讨论】:
这可能会解决您的问题:
退出 Xcode。 (不要只是关闭 Xcode 窗口,右键单击并明确退出)。
转到~/Library/Developer/Xcode/DerivedData 并删除项目文件夹。 (只需删除所有文件夹)。
清理并构建项目。
如果仍然存在错误:
执行步骤 1 和 2 并按照以下步骤操作:
将方案更改为 Firebase 并构建(Command + B)。
改回您的应用方案并再次运行。
【讨论】:
我使用 .xcodeproj 打开了项目,并使用 cocoapods 安装了 Firebase。我得到了同样的错误。但我只是关闭项目并使用 .xcworkspace 打开它。
警报已消失。 Firebase 是我项目中的第一个库。所以我一直使用 .xcodeproj 文件。
【讨论】:
通过 CocoaPods 正确安装 FireBase。请尝试以下步骤
第 1 步 - 关闭 Xcode
第 2 步 - 清除派生数据。您可以在这里找到您的派生数据
~/Library/Developer/Xcode/DerivedData
第 3 步 - 打开您的 .xcworkspace
第 4 步 - 清理您的项目 (⌘+Shift+K)
第 5 步 - 构建您的项目 (⌘+B)
确保您已打开 .xcworkspace 文件
【讨论】:
'pod deintegrate' 然后'pod install' 为我工作。
【讨论】:
我正在使用 Swift 4 和 Xcode 9.4。这帮助我解决了同样的问题。
我在 XCode 中选择了以下框架 -> 除了我的目标项目之外管理方案
在 Xcode 中:
Product-> Scheme-> FirebaseCore
Product -> Scheme -> nanopb
Product -> Scheme -> GoogleToolBoxforMac
【讨论】:
尝试了上述建议,但它们对我不起作用。对我有用的是先构建到Generic iOS Device,然后在我的物理设备 iPhone6 上运行它。
但是,我仍然无法在模拟器上运行它。这里的工作是将Build Active Architecture Only - Debug 更改为NO,在Pod Project Build Settings。
希望这对某人有所帮助。
【讨论】:
这发生在我身上,因为我安装了 Firebase CocoaPods,但我没有通过 <projectName>.xcworkspace 文件重新打开它。
所以我的工作是:
<projectName>.xcworkspace文件打开【讨论】:
我最近在使用 Xcode 12 时遇到了这个问题。我发现删除有效架构构建设置 (VALID_ARCHS) 解决了这个问题。
来自Xcode 12 发行说明:
构建设置编辑器不再包含有效架构构建设置 (VALID_ARCHS),并且不鼓励使用它。相反,有一个新的排除架构构建设置 (EXCLUDED_ARCHS)。如果项目包含 VALID_ARCHS,则该设置将显示在 Build Settings 编辑器的 User-Defined 部分中。 (15145028)
【讨论】:
你可以试试看my answer here
TL;DR 确保您运行的是 cocoapods 版本 1.4.0 minimum。它修复了静态框架导入。
您可以通过在终端上运行 sudo gem install cocoapods 来执行此操作,并通过输入 pod --version 来验证您的版本
【讨论】:
我试过这个(退出 Xcode、删除所有临时文件、重新安装 pod 等),但没有成功。起作用的只是在pod install 之后构建我的项目(command + b)。什么都行!
【讨论】:
这对我有用:
【讨论】:
确保您正在使用与 pod 文件在同一目录中创建的 工作区文件。
【讨论】:
对我来说,问题很简单。我有一台新的 m1 mac,有时无法加载可可豆荚。简单地说:
【讨论】:
当我打开白色工作区而不是蓝色工作区时,它对我有用。你按下桌面上的文件,然后按下白色文件。
文件外观的图像:
【讨论】:
今天发生在我身上,我只是不知道为什么,因为当我那天晚上关闭文件时,一切都很完美。我使用最近的项目菜单打开了我的文件并遇到了这个问题。然后我决定检查一下,Xcode 打开了错误的文件。它没有打开带有 pod 的工作区文件,而是打开了 Xcode 项目。
一旦我打开工作区,它就没有错误并且所有的 pod 都在运行。我相信你们都比我更有经验,但我只是想把它扔在那里。
【讨论】:
只需重新启动您的 xcode 并运行您的项目。
【讨论】:
这里没有什么对我有用,但后来我想出了一些有用的东西。
当我在 Xcode 的 Project Navigator 中单击我的项目,然后选择 Info 时,我查看了 Configurations 部分,发现只有一个 Release 配置,而我的应用没有 Debug 配置。
为了让 Firebase 正常工作,我去了 Project Navigator 中的 Pods,并在 Configurations 部分下删除了 Debug配置。现在它构建得很好。希望这对其他人有帮助。
【讨论】:
经过 2 天的搜索和尝试这篇文章中提出的每一个步骤,最终我可以解决问题。以上方法都没有解决我的问题,但这个:
简单而轻松地错误消失了!
【讨论】:
解决方案很简单,因为我在 pod install :D 后没有从 .xcworkspace 打开项目,我得到了同样的错误。 我错误地从旧的 .xcodeproj 文件中打开它。 就是这样,哈哈
【讨论】:
以上解决方案都不适合我。我发现问题是我在 Cocoapods 文件中有三个目标。只有我的一个主要目标添加了 Firebase。因此,当我想将 Firebase 导入其他目标中使用的文件时,Xcode 会给出错误并显示未找到模块“Firebase”。这是我的 pods 项目文件。对我来说,一种解决方案是将 Firebase pod 添加到所有目标。或者另一种解决方案是从其他目标中删除文件。
def common_pods
pod 'XXX'
end
target 'myMainProject' do
common_pods()
pod 'Firebase/Core'
pod 'Firebase/AdMob'
pod 'Firebase/RemoteConfig'
pod 'Firebase/Crashlytics'
pod 'Firebase/Analytics'
end
target 'myExtention1' do
common_pods()
end
target 'myextension2' do
common_pods()
end
【讨论】:
我在 Flutter 项目中遇到了同样的问题。
您应该从项目和每个 pod 目标中排除用于模拟器架构的 arm64
从项目中排除 arm64
将此代码添加到 Pofile
post_install do |installer|
installer.pods_project.targets.each do |target|
# exclude arm64 for simulator architecture the pod target
target.build_configurations.each do |config|
config.build_settings["EXCLUDED_ARCHS[sdk=iphonesimulator*]"] = "arm64"
end
end
end
【讨论】:
这对我有用:
/!\ 打开 project.xcworkspace 而不是你的旧文件
【讨论】:
构建时,请确保您位于项目导航器的根目录中。
【讨论】:
我也遇到了同样的问题
您可能会在打开 Xcode 的情况下重新安装 pod 否则您的 pods 文件将不允许并覆盖
打开工作区后,删除“Pods”文件夹。 退出 X-Code 在“实用程序”中打开终端 您可以在“应用程序”中找到它 使用 cd ... 转到您的项目文件夹 使用“pod install”重新安装 pod。
这应该可以解决它。
【讨论】: