我目前在Swift编码,我有一个错误:
没有这样的模块
但我不明白,因为这个模块在我的项目中,在“链接框架和库”和“嵌入式二进制文件”中声明。
框架是在Objective-C中,所以我为它写了一个桥标头。
请问,如何让Xcode识别框架?
我目前在Swift编码,我有一个错误:
没有这样的模块
但我不明白,因为这个模块在我的项目中,在“链接框架和库”和“嵌入式二进制文件”中声明。
框架是在Objective-C中,所以我为它写了一个桥标头。
请问,如何让Xcode识别框架?
当前回答
对我来说,对于所选配置,“仅构建活动体系结构”被设置为“是”。这招奏效了:
从左侧项目导航器中选择“Pods”>选择“构建设置”>仅将活动架构构建为No
其他回答
我只是通过删除引用来删除框架,然后再次添加它们。
我得到了相同的错误
import Firebase
但随后注意到,我没有将pod添加到主目标部分,而只是在Podfile中添加到Test和TestUI目标。
用命令
pod init
对于xcode swift项目,会生成以下Podfile
# Uncomment the next line to define a global platform for your project
# platform :ios, '9.0'
target 'MyApp' do
# Comment the next line if you're not using Swift and don't want to use dynamic frameworks
use_frameworks!
# Pods for MyApp
target 'MyAppTests' do
inherit! :search_paths
# Pods for testing
end
target 'MyAppUITests' do
inherit! :search_paths
# Pods for testing
end
end
因此,需要确保将pod添加到任何适当的占位符。
在我的例子中,我只需要重新加载项目。我使用命令行克隆我的项目,但它没有正确安装子模块。为了补救,我通过XCode克隆了项目,一切正常。只是要确保先备份所有更改。
假设框架真的在那里,在道路上,等等……删除~/Library/Developer/Xcode/DerivedData/ModuleCache目录(清理项目并删除项目特定的派生数据)。
在执行标准清理时,不会重新构建ModuleCache目录。
我也遇到过这个问题。对我来说,修复是两个项目之间的存档方案不匹配。我有一个xcworkspace与框架项目和应用程序项目。问题在于,在我的应用程序的存档方案中,我使用了与框架的存档方案不同的构建配置。我把两个构建配置都设置为发布,这就解决了这个问题。