在终端的 Podfile 上使用 Pod Install 命令时出错
Posted
技术标签:
【中文标题】在终端的 Podfile 上使用 Pod Install 命令时出错【英文标题】:Error using Pod Install command on Podfile in Terminal 【发布时间】:2015-08-05 12:28:29 【问题描述】:我已经安装了 Cocoapods,并使用 Atom 创建了一个包含以下行的 Podfile:
pod ‘Parse’, ‘~> 1.7.1′
pod ‘ParseUI’, ‘~> 1.1.3′
将此文件放入我的 Xcode 项目根目录,并在终端中运行“pod install”。如下所示:
[!] 您的 Podfile 已对智能引号进行了清理。为了避免出现问题 将来,您不应该使用 TextEdit 来编辑它。如果你不是 使用 TextEdit,你应该在你的编辑器中关闭智能引号 选择。
/Library/Ruby/Gems/2.0.0/gems/cocoapods-core-0.38.2/lib/cocoapods-core/standard_error.rb:87:in `message': incompatible character encodings: ASCII-8BIT and UTF-8 (Encoding::CompatibilityError)
from /Library/Ruby/Gems/2.0.0/gems/claide-0.9.1/lib/claide/command.rb:367:in `handle_exception'
from /Library/Ruby/Gems/2.0.0/gems/claide-0.9.1/lib/claide/command.rb:315:in `rescue in run'
from /Library/Ruby/Gems/2.0.0/gems/claide-0.9.1/lib/claide/command.rb:303:in `run'
from /Library/Ruby/Gems/2.0.0/gems/cocoapods-0.38.2/lib/cocoapods/command.rb:48:in `run'
from /Library/Ruby/Gems/2.0.0/gems/cocoapods-0.38.2/bin/pod:44:in `<top (required)>'
from /usr/bin/pod:23:in `load'
from /usr/bin/pod:23:in `<main>'
我不确定我做错了什么,如果有人能给我一些建议,我将不胜感激。谢谢。
【问题讨论】:
【参考方案1】:你不应该使用 TextEdit 来编辑 pod 文件,因为 TextEdit 喜欢 用更具图形吸引力的报价替换标准报价。 这会导致 CocoaPods 混淆并显示错误,所以它是 最好只使用 Xcode 或其他编程文本编辑器。
文本编辑:
使用TextEdit会给你以下,
pod ‘Parse’, ‘~> 1.7.1′ //notice the quotes
要在 TextEdit 中关闭智能引号,请转到
TextEdit > Preferences > New Document > Options
Xcode:
要获得正确的报价,您应该在打开 Podfie 时使用 Xcode:
pod 'Parse', '~> 1.7.1'
使用 Xcode 应用程序打开的终端命令:
$ touch Podfile //OR $ cd <parentDirectory of Podfile>
$ open -a Xcode Podfile
【讨论】:
'如果你不使用 TextEdit,你应该在你选择的编辑器中关闭智能引号。'如何做到这一点? @abhi1992 您使用的是哪个编辑器?检查您正在使用的文本编辑器的首选项。如果您使用的是 TextEdit,请查看更新后的答案。 奇怪的是没有人回答@Honey 的简单问题。 TextEdit 是 MacOS 的默认文本编辑器应用,相当于 Windows 上的记事本。【参考方案2】:我遇到了这个问题,因为在 podfile 的评论中使用了一个智能引号。我有一段时间在我的 podfile 中找不到智能引用。智能引号有两个符号:' 和 '。确保两者都从整个 podfile 中删除。
# Espressif’s ESP-TOUCH protocol implements Smart Config ...
【讨论】:
【参考方案3】:如果有人使用 Jenkins CI,并且在更正 Podfile 后,错误也无法解决。在您的奴隶上更新您的 cocoapods 版本可以帮助解决此错误。由于 jenkins 无法查明问题并给出此一般错误。
【讨论】:
以上是关于在终端的 Podfile 上使用 Pod Install 命令时出错的主要内容,如果未能解决你的问题,请参考以下文章
处理 Podfile 的安装后挂钩时出错。无法在 iOS 模拟器上运行颤振项目得到 pod 错误
CocoaPods 找不到 pod“FirebaseCore”的兼容版本:在快照中 (Podfile.lock)
pod install 失败并出现错误:在 iOS 中安装 pod 时 `Podfile` 需要 Library (from `../`)`