关于在 Xcode 上导入 Alamofire,我是不是遗漏了啥?

Posted

技术标签:

【中文标题】关于在 Xcode 上导入 Alamofire,我是不是遗漏了啥?【英文标题】:Have I missed anything with regards to importing Alamofire on Xcode?关于在 Xcode 上导入 Alamofire,我是否遗漏了什么? 【发布时间】:2019-08-29 09:43:21 【问题描述】:

重申一下: 我已经安装了 PodFile 打开 Xcode.workspace 将 Xcode 更新至 10.13.6 通过 CocoaPods 和手动在终端上安装 Alamofire

仍然'没有这样的模块'。

目前处于初级水平,非常初级,所以如果我有明显的遗漏,请不要犹豫,让我知道。

这是为了提供一些上下文。目前,当我尝试为以下代码(在许多 ofc 中)运行构建(天气应用程序)时

import UIKit
import Alamofire
import SwiftyJSON
import NVActivityIndicatorView
import CoreLocation

以下结果来了:

没有这样的模块'Alamofire'

我希望构建完成并且设计会显示在 iPhone屏幕界面,但我收到的是6个错误。

ViewController 中的 1 个

Swift 编译器错误 /Users/geralt/Desktop/weather/weather/ViewController.swift:11:8: 否 这样的模块'Alamofire'

工作区中的 5 个

错误:-1: SWIFT_VERSION '5.0' 不受支持,支持的版本是: 3.0、4.0、4.2。 (在目标“Alamofire macOS”中)

:-1: SWIFT_VERSION '5.0' 不受支持,支持的版本是:3.0, 4.0、4.2。 (在目标“Alamofire ios”中)

:-1: 意外重复任务:CodeSign /Users/geralt/Library/Developer/Xcode/DerivedData/weather-djqzudchmqdcjmaidcjeenpqymbn/Build/Products/Debug-iphonesimulator/weather.app/Frameworks/Alamofire.framework (在目标“天气”中)

:-1: 多个命令产生 '/Users/geralt/Library/Developer/Xcode/DerivedData/weather-djqzudchmqdcjmaidcjeenpqymbn/Build/Products/Debug-iphonesimulator/weather.app/Frameworks/Alamofire.framework': 1) 目标“天气”具有来自的复制命令 '/Users/geralt/Library/Developer/Xcode/DerivedData/weather-djqzudchmqdcjmaidcjeenpqymbn/Build/Products/Debug-iphonesimulator/Alamofire.framework' 到 '/Users/geralt/Library/Developer/Xcode/DerivedData/weather-djqzudchmqdcjmaidcjeenpqymbn/Build/Products/Debug-iphonesimulator/weather.app/Frameworks/Alamofire.framework' 2) 目标“天气”具有来自的复制命令 '/Users/geralt/Library/Developer/Xcode/DerivedData/weather-djqzudchmqdcjmaidcjeenpqymbn/Build/Products/Debug/Alamofire.framework' 到 '/Users/geralt/Library/Developer/Xcode/DerivedData/weather-djqzudchmqdcjmaidcjeenpqymbn/Build/Products/Debug-iphonesimulator/weather.app/Frameworks/Alamofire.framework'

:-1: 多个命令产生 '/Users/geralt/Library/Developer/Xcode/DerivedData/weather-djqzudchmqdcjmaidcjeenpqymbn/Build/Products/Debug-iphonesimulator/weather.app/Frameworks/Alamofire.framework/Alamofire': 1) 目标“天气”具有来自的复制命令 '/Users/geralt/Library/Developer/Xcode/DerivedData/weather-djqzudchmqdcjmaidcjeenpqymbn/Build/Products/Debug-iphonesimulator/Alamofire.framework' 到 '/Users/geralt/Library/Developer/Xcode/DerivedData/weather-djqzudchmqdcjmaidcjeenpqymbn/Build/Products/Debug-iphonesimulator/weather.app/Frameworks/Alamofire.framework' 2) 目标“天气”具有来自的复制命令 '/Users/geralt/Library/Developer/Xcode/DerivedData/weather-djqzudchmqdcjmaidcjeenpqymbn/Build/Products/Debug/Alamofire.framework' 到 '/Users/geralt/Library/Developer/Xcode/DerivedData/weather-djqzudchmqdcjmaidcjeenpqymbn/Build/Products/Debug-iphonesimulator/weather.app/Frameworks/Alamofire.framework'

这是错误的直接复制和粘贴,因此如果显得冗长,请提前道歉。

我已尝试将 SWIFT 和 AlamoFire 更改为兼容。这变得非常令人沮丧,因为我仍然遇到此构建失败。

有没有人有其他的建议可以帮助我?

【问题讨论】:

by both CocoaPods and manually 是什么意思?你能给我们看看 podfile 吗?进程应该是add pod in podfile,在终端运行pod install,然后打开workspace。并导入框架。 当然,podfile 为: pod 'Alamofire', '~> 5.0.0-beta.5' pod 'SwiftyJSON', '~ 4.0' pod 'NVActivityIndi​​catorView' pod 'AFNetworking', ' 0.9.1' 你跑pod install了吗?成功完成了吗? 感谢您的帮助。在执行“cd”和天气应用程序目录之后,我运行了它。它带来了很多东西,但有一点让我印象深刻:### Podfile ```ruby # 取消注释下一行以为您的项目定义一个全球平台 # platform :ios, '9.0' target 'weather' do #如果您不想使用动态框架 use_frameworks,请评论下一行! # 天气 pod 'Alamofire', '~> 4' pod 'SwiftyJSON', '~ 4.2' pod 'NVActivityIndi​​catorView' pod 'AFNetworking', '0.9.1' 1/2 目标 'weatherTests' 继承! :search_paths # 用于测试最终目标 'weatherUITests' 的 Pod 会继承! :search_paths # Pods 用于测试 end end ``` ### Error ``` ArgumentError - Illformed requirements "~ 4.2" 2/2 【参考方案1】:

将 Alamofire.framework 添加到链接框架和库

【讨论】:

谢谢,但是当我检查链接框架和库时,我似乎已经有了。还有什么我可能错过的吗?【参考方案2】:

伙伴,无需更改 pod 文件,这里的问题是您的 Alamofire 指定为 SWIFT 5.0,并且您的 IDE 不支持它,因此您需要做的是更改 Swift 语言版本。

首先单击 - Pods 图标,然后您将在那里看到所有框架,然后单击 Alamofire。 之后,您将看到构建设置。正如你在这张图片中看到的

现在在搜索字段中搜索“swift”更改 swift 版本并构建您的代码。给你

希望它会起作用。

【讨论】:

感谢您澄清并显示此截图。我已将其更改为 Swift 4.2(也有 Swift 4 和 Swift 3,但我将其更改为 4.2)。我认为这种更改就是您所说的“更改快速版本干净”的意思。再次构建代码,它仍然显示“没有这样的模块 Alamofire”。顺便说一下,Podfile 上的显示如下: pod 'Alamofire', '~> 5.0.0-beta.5' pod 'SwiftyJSON', '~4.0' pod 'NVActivityIndi​​catorView' pod 'AFNetworking', '0.9.1' Alamofire 5 需要 Swift 5。如果您需要使用 Swift 4(.2),请使用 Alamofire 4。另外,不要使用 AFNetworking,尤其是 0.9。 谢谢 我已经把 Swift 和 Alamo 改成对应的数字了;拿走了 AFNetworking 仍然是构建失败。

以上是关于关于在 Xcode 上导入 Alamofire,我是不是遗漏了啥?的主要内容,如果未能解决你的问题,请参考以下文章

我正在尝试使用 Alamofire 框架。如果我尝试导入 Alamofire,我的 xcode 会显示如下错误

Xcode 8 和 Swift 3 中没有这样的模块 Alamofire

如何在 PlayGround 中安装 Alamofire

在操场上使用 Alamofire 发出 http 请求的延迟

带有 xcode 8 的 Alamofire 2.0

如何防止“没有这样的模块'Alamofire'”作为Xcode中的错误?