我目前在Swift编码,我有一个错误:
没有这样的模块
但我不明白,因为这个模块在我的项目中,在“链接框架和库”和“嵌入式二进制文件”中声明。
框架是在Objective-C中,所以我为它写了一个桥标头。
请问,如何让Xcode识别框架?
我目前在Swift编码,我有一个错误:
没有这样的模块
但我不明白,因为这个模块在我的项目中,在“链接框架和库”和“嵌入式二进制文件”中声明。
框架是在Objective-C中,所以我为它写了一个桥标头。
请问,如何让Xcode识别框架?
当前回答
我得到这个问题是因为我在podfile中设置了错误的目标(项目本身而不是UITests部分)。
其他回答
在极少数情况下,此错误可以通过在[ProjectNavigator]->[项目]->[目标]->(架构)BaseSDK设置适当的平台来修复
当创建一个框架时,我不小心选择了错误的模板(因为我之前创建macOS框架),因为它被设置为喜欢我之前的选择。当添加目标时,很容易忽略配置平台,所以要仔细检查。
在我的情况下,项目上的swift 4库没有编译,所以不可能找到它们并导入。 解决方案是将cocoapods库的编译版本设置为swift 3.2
如果你是面向tvOS这样的平台创造游戏,请确保你选择了一个Apple TV模拟器。
使用iOS模拟器创建tvOS应用时,我就犯了这个错误。花了大半个小时寻找各种构建问题……哎。
我得到了相同的错误
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添加到任何适当的占位符。
我用
链接的框架和库
将框架添加到Workspace文件夹的顶部。讨厌鬼。