Alamofire 模块未使用 Swift 3.0.1 编译

Posted

技术标签:

【中文标题】Alamofire 模块未使用 Swift 3.0.1 编译【英文标题】:Alamofire module not compiling with Swift 3.0.1 【发布时间】:2016-11-26 16:04:38 【问题描述】:

我在 Swift 3.0.1 中有一个 Xcode 项目,在尝试构建时遇到此错误:

Module compiled with Swift 3.0 cannot be imported in Swift 3.0.1: <path_to_project>/Alamofire.framework/Modules/Alamofire.swiftmodule/x86_64.swiftmodule

我已经引用了这个问题:Module compiled with swift 3.0 cannot be imported in Swift 3.0.1,但选择的答案不起作用。

我的 Cartfile 的内容很简单: github "Alamofire/Alamofire"

提前感谢您的帮助。

【问题讨论】:

【参考方案1】:

将它添加到您的根文件夹中,就像您对 '.gitignore' 所做的那样

.swift 版本

'.swift-version' 应该包含 '3.0-GM-CANDIDATE' 然后执行 'pod install'

【讨论】:

我没有使用 CocoaPods,只是 Carthage。但是,添加文件并执行carthage update --platform ios --no-use-binaries 不起作用。【参考方案2】:

你可能有多个 Xcode。

检查您的 xcode 路径

xcode-select --print-path

检查您的 swift 版本

xcrun swift --version

carthage 将基于上述命令在终端中打印的 swift 版本构建。

解决方案

sudo xcode-select --switch <your new Xcode path>

carthage update --no-use-binaries --platform iOS

【讨论】:

以上是关于Alamofire 模块未使用 Swift 3.0.1 编译的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Swift 2.3 和 3.0 编译模块?

Alamofire 自定义响应从 Alamofire v1.3 迁移到 3.0(和 Swift 2 语法)

POST 请求 Swift 3.0 Alamofire

使用 Swift 3.0 的 Alamofire 4 失败:错误域 = NSURLErrorDomain 代码 = -999 “已取消”

如何使用参数 swift 3.0 Alamofire 4.0 调用邮政服务?

如何使用 Alamofire 在 Xcode 8 Swift 3.0 中获取特定的 JSON?