我正在运行XCode 7,Swift 2.0,iOS 9。
我想使用Cocoapods在我的项目中安装Alamofire。我做了以下事情:
gem install cocoapods
pod setup
pod init
将Podfile更新为:
# Uncomment this line to define a global platform for your project
# platform :ios, '9.0'
use_frameworks!
target 'JSONeg' do
pod 'Alamofire', :branch => 'swift-2'
end
然后我安装了pod:
pod install
我将以下内容添加到ViewController.swift中
import Alamofire
这会引发以下错误:
Cannot load underlying module for 'Alamofire'
我测试了另一个pod并且它引发了同样的错误,所以我猜问题是安装了Cocoapods。任何帮助将不胜感激。
这似乎是XCode中的一个错误。我遇到了同样的问题,正如对这个问题的另一个答案的评论中所描述的那样,构建项目使得错误消失了。
你有没有检查过你是否有最新版的Cocoapods?您可以通过更新所有宝石进行更新:
sudo gem update
或者只是重新安装Cocoapods:
[sudo] gem install cocoapods
如果这样做也无济于事:CocoaPods - build for iOS 9 / Swift 2 with Xcode-beta
在哪里向您展示如何在Xcode首选项“位置”选项卡中轻松更改命令行工具版本,并将“命令行工具”更改为Xcode 7.0。
Build Settings -> Framework Search Paths
。Build Settings
中的变量名称来查找变量的值。总之,请确保您的<Project Root>
路径不包含空格。否则,重命名包含空格的dir
,然后清理并构建项目。
例如如果这是您的项目根目录:/Users/handsomeboy/ios app/Fancy App/
,请重命名包含空格的文件夹。摆脱空间的一种方法是:将'ios app'
改为'ios_app'
按照步骤:
1.安装pods 2.Open workSpace 3.运行/构建你的应用程序4.然后你可以导入框架
同样的问题对我来说。我通过删除pod文件中的Alamofire版本解决了这个问题。
Pod文件为
# Uncomment this line to define a global platform for your project
platform :ios, "8.0"
# Uncomment this line if you're using Swift
use_frameworks!
target 'GettingSwift' do
pod 'Alamofire'
end
target 'GettingSwiftTests' do
end
将GCC_SYMBOLS_PRIVATE_EXTERN
(在目标设置中显示为“默认隐藏的符号”)设置为链接框架中的YES
帮助我摆脱了这个错误。我花了2天时间才找到这个,希望它会帮助别人:)
在我的情况下,这是一个不同的原因,它是我的目标构建设置中的其他swift标志,我不得不将继承的标志添加到顶部。
安装CocoaPods时,请务必通过删除#来指定ios 9.0。因此,# platform :ios, '9.0'
应该只是platform :ios, '9.0'
然后,如果错误再次显示,只需构建并运行。构建并运行后,错误不应该返回。
此外,如果您的计算机上安装了多个版本的Xcode,则可能会发生这种情况。首先退出(不仅仅是关闭)Xcode的所有版本。
尝试Build For Test适合我
如果您已验证已成功安装Pod,则该错误可能与您在安装Pod之前剩余的派生数据相关联。您可以转到File -> Workspace Settings... -> Derived Data
清除您的派生数据。删除与您的应用关联的派生数据文件夹并清理您的版本应该可以解决问题。
就我而言:
1. //import Pod_Module
的评论线
2.转到项目 - >清除或使用快捷键(Command + Shift + K)
2.关闭您的项目
3.在终端中转到项目目录
4.运行> pod install
5.打开.xcworkspace
文件并构建它!
6.取消注释import Pod_Module
在此URL:https://github.com/Alamofire/Alamofire/issues/441
其中一位用户写道:
清洁无法正常工作,从pods重新安装无法正常工作,从carthage安装无法正常工作,手动安装无法正常工作。我终于在Build for Testing之后开始工作了。
所以我尝试了这个(xcode版本9.2(9C40b)):
它对我有用。错误现在消失了。
注意:我的吊舱不是Alamofire所以我想它适用于每个Pod。
另一种可能的情况:确保测试目标在父目标的范围内定义(不在其外部)
EG
target 'MyApp' do
pod 'GoogleAnalytics', '~> 3.1'
target 'MyAppTests' do
inherit! :search_paths
pod 'OCMock', '~> 2.0.1'
end
end
如果它看起来像:
target 'MyApp' do
pod 'GoogleAnalytics', '~> 3.1'
end
target 'MyAppTests' do
inherit! :search_paths
pod 'OCMock', '~> 2.0.1'
end
那么你也会收到这个错误。
无法为SWIFT加载“x”的基础模块:
如何解决问题:
步骤:1创建一个新项目,然后在不安装pod的情况下成功构建和运行。
步骤:2在构建并运行项目成功之后,现在尝试安装pod然后尝试importrealm,alamofire,图表等它将像魅力一样工作。
失败案例 - >新项目 - >通过首先构建的cocoapods添加(领域,alamofire,图表等) - >打开Xcode工作区 - >构建和运行
成功案例 - >新项目 - >构建和运行 - >通过cocoapods添加(领域,alamofire,图表等) - >打开Xcode工作区 - >再次构建和运行=成功
这对我有用:
一旦你安装了Alamofire pod。
Step.1您应该双击your_project_name.xcworkspace文件打开项目。
Step.2转到项目设置 - >构建阶段 - >使用库链接二进制 - >添加框架“Alamofire.framework”
而已!!
现在您可以导入模块
在我的案例中有什么帮助:
1)关闭项目和XCode
2)在terminal repeat命令中
> pod install
3)打开项目
(如果没有帮助,请在重新安装前尝试删除Pod /文件夹)
我尝试了所有这些解决方案:重建,清理,重新安装吊舱等,但在我的情况下,由于AR,我将“仅限构建活动架构”设置更改为“否”是一个问题我正在使用的图书馆。将其更改回“是”并修复。希望这有助于某人。
我不得不做一个产品>(选择点击)清洁构建文件夹...然后再次运行,问题就消失了。
我在Xcode版本8.3.1(8E1000a)。不知何故,当我想要pod安装SwiftCloudant模块时会出现这个问题。我运行pod安装时可能没有关闭我的Xcode。
我在Targets> General选项卡中手动添加了SwiftCloudant.framework。