转换为swift 3后,Tests.swift文件中没有这样的模块“Firebase”
我将项目转换为swift 3后,我在Test.swift文件中收到此错误:
No such module 'Firebase' Command/usr/bin/ditto failed with code 1
这是否意味着我必须更新firebase框架? 为什么会这样?
*该应用程序仍在运行!
*这是pod文件:
# Uncomment this line to define a global platform for your project # platform :ios, '9.0' use_frameworks! target 'TheTestingApp' do pod 'Firebase' pod 'Firebase/Auth' pod 'Firebase/Database' pod 'Firebase/Storage' end
问题是你正在使用提到的Cocoapods用于TheTestingApp
只有你还需要添加这些或你想要用于TheTestingAppTest
同样清理您的项目: – CMD+SHIFT+K
,然后运行pod install
然后运行您的应用程序。
像这样: –
use_frameworks! target 'TheTestingApp' do pod 'Firebase' pod 'Firebase/Auth' pod 'Firebase/Database' pod 'Firebase/Storage' end target 'TheTestingAppTests' do pod 'Firebase' pod 'Firebase/Auth' pod 'Firebase/Database' pod 'Firebase/Storage' end
我一直在我的个人项目中使用Firebase
,我能够进行unit testing,但今晚我在新项目中遇到了这个恼人的错误。 虽然Dravidian的答案是正确的,但它有点不完整,代码是多余的。 我写了一篇关于此的博客: http : //www.prettyitgirl.com/2017/07/how-to-fix-missing-required-module-in.html并总结一下,以下是我如何解决这个问题的步骤:)
-
确保所有依赖项都针对Swift 3.0版本,并在主目标下添加测试目标,如下所示:
target 'ProjectName' do pod 'Firebase/Auth' pod 'Firebase/Core' pod 'Firebase/Database' pod 'Firebase/Messaging' pod 'Firebase/Storage' target 'ProjectNameTests' do inherit! :search_paths end post_install do |installer| installer.pods_project.targets.each do |target| target.build_configurations.each do |config| config.build_settings['SWIFT_VERSION'] = '3.0' end end end end
-
在标题搜索路径中添加搜索路径在测试目标的构建设置中,搜索标题搜索路径并添加以下两个新搜索路径:
$(SRCROOT)/Pods (recursive) ${PODS_ROOT}/Firebase/Core/Sources (non-recursive)
EZ! 🙂
你检查你的podfile它已经在声明当时你的项目已经清理(ctrl + shift + k)否则podfile数据擦除并再次podfile安装它应该更好的工作..