【问题标题】:Alamofire No Such Module (CocoaPods)Alamofire 没有这样的模块(CocoaPods)
【发布时间】:2015-12-04 15:03:00
【问题描述】:

使用 Xcode 7

我正在尝试在示例项目中安装 Alamofire。已使用Ray Wenderlich's page的说明

上面链接的唯一变化是 podfile ——它来自 GitHub 页面here,因为版本已经更新。我也用过 Swift 2.0 分支。

下面是错误的快照,我的 pod 文件和我安装 pod 的终端帖子

PODFILE

终端

P.S: 我想用 cocoapods 来安装 Alamofire。我不想从github页面下载它

【问题讨论】:

  • 当你点击pod install时,你会下载Alamofire吗?
  • 我想是的..我在原始问题中添加了我的终端截图..请看一下
  • 你是怎么解决这个问题的?

标签: ios cocoapods alamofire


【解决方案1】:

对我来说,诀窍是打开 .xcworkspace 文件而不是原始项目文件本身。

【讨论】:

  • 这是每个人都应该尝试的第一件事。完美运行
【解决方案2】:

工作:

方案 -> 管理方案... 勾选 Alamofire 复选框 → 构建 Alamofire 方案

而且,如果您使用 Playground ,您应该更改设置 Playground:

查看 -> 实用程序 -> 显示文件检查器 平台 OSX → iOS

【讨论】:

  • 选择 alamofire 时构建成功,但在我更改项目时无法正常工作。并显示构建失败并且在 Alamofire 导入中没有这样的模块...
  • 我试图在 Xcode 9.2 上运行使用 swift 2.0 开发的现有项目,这个解决方案对我有用。
  • 到目前为止,这里发布的解决方案都不适合我。
【解决方案3】:

试试这个。

对于 Swift 2.0,无需将 Alamofire.xcodeproj 添加到您的 xcode 中。只需从https://github.com/Alamofire 复制并粘贴源文件夹即可。

或者如果您想从 Cocoapods 安装 Alamofire,请尝试以下代码。

  source 'https://github.com/CocoaPods/Specs.git'
  platform :ios, '8.0'
  use_frameworks!

  pod 'Alamofire', '~> 2.0'

【讨论】:

  • 尝试了 cocoapod 的代码......没有用......说无法为 Alamofire 加载底层模块
  • 我认为您必须尝试将 Alamofire git 项目中的源文件夹复制并粘贴到您的 xcodeprj 中。或尝试将您的 cocoapods 更新到最新版本。
  • 是的..我做到了,它工作了..我也只需要构建项目,即使错误出现了,然后就很好了。谢谢
  • 嗨,我正在扩展 Alamofire 依赖项,但仍然得到“没有这样的模块” - 我的 Xcode 版本在 7.2.1、OSX El Capitan 等。请尽快更新。跨度>
【解决方案4】:

导入 UIKit 后导入 Alamofire 然后注释掉,先建项目。 取消注释它。 (当其他答案不起作用时,这对我和其他人有用)。

【讨论】:

  • 问题已经有正确答案。我不确定这个魔术会给这个帖子带来什么新东西。
  • 其他答案对我不起作用,我已经尝试了所有方法并花了几天时间试图解决这个问题。也许对于其他读者来说,这可能会对他们有所帮助。我在另一个 Q 页面上看到了这个确切的问题,它也是其他人的解决方案。这不是魔术,而是对编程错误的修复。为什么不允许其他解决方案?它不是在一个线程中重复一个答案,它提供了另一种可能是某人需要的答案的解决方案,并且尚未在此处发布。在这里看到这是其他几个人的答案:github.com/Alamofire/Alamofire/issues/122
  • 这对我有用,在没有其他方法之后!疯狂
  • 这有效......直到下一次清洁。然后问题又回来了。
【解决方案5】:

供以后遇到此问题的人参考:

Swift 2.x + CocoaPods 1.x

症状: build 在 Xcode 中用于调试配置,但在使用 pod lib lint 或类似命令从控制台执行 xcodebuild 时会失败。结果是error: no such module 'X'

解决方案:MyProject.podspec 中添加您的依赖项而不指定版本:

spec.dependency "Alamofire"

Podfile 也应该包含相同的依赖项。然后运行:

$ pod install && open MyProject.xcworkspace

您应该打开.xcworkspace 而不是.xcodeproj。该构建现在可以在 Xcode 和控制台中运行,并且 pod lib lint 通过验证。

我写这篇文章是因为我试图发布一个新的 CocoaPods pod 库并且遇到了类似的问题但没有找到答案,也因为谷歌导致了这个问题。

【讨论】:

    【解决方案6】:

    这里是做什么:

    • 关闭您的项目,
    • 安装你的 pod 库,
    • 然后安装 alamofire。

    做完所有事情后,不要打开扩展名为.xcodeproj的文件,而是打开扩展名为.xcworkspace的文件

    【讨论】:

      【解决方案7】:

      我的问题通过这些步骤解决了:

      清洁项目 转到项目 > 构建设置 > 框架搜索路径 并添加

      • “$PODS_CONFIGURATION_BUILD_DIR/Alamofire”为非递归
      • $(inherited) 作为非递归的
      • $(SRCROOT) 作为递归

      【讨论】:

        【解决方案8】:

        将 Alamo Fire 添加到我的目标的所有构建阶段为我修复了它。

        【讨论】:

        • 为我工作。非常感谢
        【解决方案9】:

        遇到同样的问题,下面的技巧解决了问题

        Go to Manage scheme -> Select pod library that is causing issue -> Build
        
        Change back the scheme to project and then run the app, you are good to go
        

        注意:如果您在方案中没有看到 pod 库,请转到管理方案并选择您要构建的 pod 库。

        【讨论】:

          【解决方案10】:

          只有一种方法可以解决这个问题。

          退出 Xcode。

          删除项目的临时文件位于 /Users/username/Library/Developer/Xcode/DerivedData

          删除项目名称.xcworkspace

          删除 Podfile.lock 文件和 Pods 文件夹运行 pod install。

          打开新创建的 ProjectName.xcworkspace 文件并构建。

          感谢 Dimitris Bouzikas here

          【讨论】:

            【解决方案11】:

            在回答@satoshin 之后,我还必须检查Manage Schemes 窗口右侧的Shared 框。

            【讨论】:

              【解决方案12】:

              找到项目并导航到“.xcworkspace”文件。那就是你的 Pod 的安装位置。如果你去你的原始项目“.xcodeproj”,你只会看到 pod 调试文件。希望这会有所帮助。我也花了一段时间才弄清楚问题所在。

              【讨论】:

                【解决方案13】:

                我正在使用 swift 3,我通过删除此项目的 Derived Data 来解决此问题。 干杯...!!!

                【讨论】:

                • 我已经清理了派生数据,但仍然显示同样的问题。
                【解决方案14】:

                如果清理项目/重新启动 xcode/重新安装 cocoapods 等,则不起作用。您可以尝试运行Product -> Build for -> Testing (cmd + shift + u)。构建失败,但导入之后立即生效。

                【讨论】:

                  【解决方案15】:

                  至于我努力更改项目的名称。不小心放了

                  项目名称测试

                  而不是

                  项目名称

                  如果您在任何地方都正确配置了名称,则不需要架构:

                  1. 检查 Podfile
                  2. 检查您启动了哪个项目文件。 (应为“xcworkspace”创建白色图标)
                  3. 产品 -> 清理构建文件夹
                  4. 产品 -> 构建(现在您可以在模拟器中运行)。
                  5. 从头开始,因为大多数错误总是发生在人为错误的原因上,而不是开发人员。
                  6. 如果您在 Podfile 中输入了错误的项目名称,请检查“Linked Frameworks...”。如果是这样 - 删除此框架。路径如下截图所示。

                  正确的 Podfile 示例(Alamofire):

                  'https://github.com/CocoaPods/Specs.git'
                  platform :ios, '10.0'
                  use_frameworks!
                  
                  target 'ProjectName' do
                    pod 'Alamofire', '~> 4.7'
                  end
                  
                  • ProjectName 不应包含任何扩展名(文件类型)。

                  【讨论】:

                    【解决方案16】:

                    [对于未来的求职者]你可能错过了下面的第二步:

                    进入项目设置

                    1. 转到构建阶段选项卡,创建一个新的运行脚本阶段并将输入文件添加到您的 Alamofire 框架。就我而言,我设置了$(SRCROOT)/Carthage/Build/IOS/Alamofire.framework
                    2. 转到常规选项卡,向下滚动到链接的框架和库添加 Alamofire.Framework 文件夹。您可能不会从列表中找到它,因此您需要按“添加其他”按钮并自己介绍它。

                    【讨论】:

                      【解决方案17】:

                      对于绝对新手只需关闭 xcode 项目并以新方式打开。 在您的文件夹中选择包含如下扩展名的文件:.xcodeproj 并享受您的生活。

                      【讨论】:

                        【解决方案18】:

                        对我来说,解决方案是从 Pod 和项目中排除 arm64 设备。 图片在附件中。

                        【讨论】:

                          猜你喜欢
                          • 1970-01-01
                          • 1970-01-01
                          • 2018-10-23
                          • 2018-01-17
                          • 1970-01-01
                          • 1970-01-01
                          • 2021-07-08
                          • 2017-02-18
                          相关资源
                          最近更新 更多