快速导入模块

Posted

技术标签:

【中文标题】快速导入模块【英文标题】:Swift import module 【发布时间】:2015-11-17 09:43:33 【问题描述】:

我是开发 ios 应用程序的新手,所以我还在学习曲线上,遇到了一个很奇怪的问题。

我有一个项目,我在其中使用带有 CocoaPods 的“Alamofire”模块。一切都很好,到目前为止工作。然后我创建了另一个控制器,我想在其中导入相同的模块,但结果消息始终是“没有这样的模块...”

它如何以及为什么在一个文件中有效,但在另一个文件中无效?两个文件都在同一个目录中。

附:我已经尝试清理项目并删除 Xcode 的“DerivedData”文件夹。

【问题讨论】:

你输入的是import Alomafire吗?正确的拼写是“Alamofire”。 正如我之前所说,它在一个文件中有效,但在另一个文件中无效。是的,我使用“import Alomafire” 文件目标是您的应用程序目标吗? @SaidSikira 您是指右侧面板中的“目标会员”吗?如果是这样,那么是的。否则我不明白你的意思。 @NateCook 抱歉,我刚刚意识到我在这里写的是“Alomafire”,但在代码中它是“Alamofire”,所以这不是问题。无论如何,我放弃了 CocoaPods,只是手动添加模块(如 Alamofire 的自述文件中所述)似乎对我有用。 【参考方案1】:

检查您的两个文件 Target Membership。它需要设置为您正在使用的目标:

很可能,您似乎将文件拖到项目中并且没有正确设置目标。检查两次,因为没有其他原因。除非您的第二个文件在测试目标中。在这种情况下,添加到您的 pod 文件中:

target 'YourTestTarget' do
pod 'Alamofire'
end

然后运行pod install

【讨论】:

以上是关于快速导入模块的主要内容,如果未能解决你的问题,请参考以下文章

如何清理模块中的导入语句

Python中的模块与包

Git子模块的本地导入错误 - Python

python 软件目录结构规范 与 模块导入

Python3快速入门——Python包管理

无法从非 EcmaScript 模块导入命名的导出 XXXX(只有默认导出可用)