便利管理众多第三方库(自动配置相关信息)并提供动态更新(采用终端操作)

首先需要安装工具

 sudo gem install cocoapods

如果使用此命令进行安装无法安装时出现以下错误信息

ERROR:  Could not find a valid gem \'cocoapods\' (>= 0), here is why:
          Unable to download data from https://rubygems.org/ - Errno::ETIMEDOUT: Operation timed out - connect(2) (https://rubygems.org/latest_specs.4.8.gz)

此错误是由于国内屏蔽了cocoapods的安装资源,导致的无法访问,现在需要添加一个访问资源的镜像地址

$ gem sources -l (查看当前ruby的源)
$ gem sources -a /*安装源地址*/
$ gem sources -l

以上命令先是查看当前ruby资源,替换为一个可使用的镜像地址(保留有效的就可以了),最后检查是否成功了。再次使用安装命令就可以了。

如果提示出现以下问题

其中明确了是由于现有的安装源出现了问题,并且其匹配的安装源并不是当前添加的,其匹配的是ruby_china.org的安装源

所以我们需要将当前的安装源替换为其提示的http://ruby_china.org

有效的安装源

p.p1 { margin: 0; font: 11px Menlo; color: rgba(0, 0, 0, 1); background-color: rgba(255, 255, 255, 1) }
span.s1 { font-variant-ligatures: no-common-ligatures }

https://rubygems.org/

https://gems.ruby-china.com

并且还需要调用一下命令更新gem

sudo gem update --system

  此时使用安装命令就可以了

如果出现以下提示

则需要使用另一个安装命令

sudo gem install -n /usr/local/bin cocoapods --pre

  

此时基本完成可以查看安装的版本了,调用git相关的命令时会提示更新,更新即可

 

以上如果是升级cocoapods的都可以把install替换为update。

参考地址:

 

cocoapods更新

 

CocoaPods的安装使用和常见问题

gem install fails with openssl failure

如果更新cocoapods

需要检查安装资源是否存在原来的地址”https://rubygems.org/“,存在会提示如下错误

 

参考:

[奇怪的是一开始使用vpn进行安装也没有成功]。

然后我们需要告诉cocoapods哪个工程需要使用它

finder进入工程目录然后将任意文件拖入一个TXT文件即可快速获取文件路径[追加:将文件直接拖入终端也可以获取到文件路径]

然后需要建立一个目录文件用来告诉cocoapods我们希望使用那些库

pod init

此命令会自动生成一个Podfile的文件

文件声明了全局的平台是IOS,最低是6.0系统[这句话很重要如果缺失会提示如下错误信息]

Analyzing dependencies
[!] Unable to satisfy the following requirements:

- `MSSimpleGauge (~> 0.5)` required by `Podfile`

参考:

CocoaPods 的又一个小坑 required by `Podfile` – fg313071405的专栏 – 博客频道 – CSDN.NET

然后告诉cocoapods我们希望使用哪些库,根据Podfile文件的信息也可以为单元测试单独使用cocoapods。

为了确认第三方库是否支持cocoapods,我们可以使用以下命令

MSSimpleGauge就是我们希望使用第三方库,以上信息就告诉我们它支持cocoapods。

使用以下命令可以查看cocoapods的所有帮助

然后我们把第三方库的名字加入到目录文件里面[cocoapods建议不要使用文本编辑,直接使用xcode编辑]

当然我没有指定第三方的版本,默认最新的,保存文件。[有些框架如果不指定版本号无法正常安装,最好按照查询的信息进行添加]

 

指定 SDK 版本

CocoaPods 中,有几种设置 SDK 版本的方法。如:

  • \’>= 2.4.X\’ 会根据您本地的 CocoaPods 源列表,导入不低于 2.4.X 版本的 SDK。
  • \’~> 2.4.X\’ 会根据您本地的 CocoaPods 源列表,介于 2.4.X~2.5.0 之前版本的 SDK。

我们建议您锁定版本,便于团队开发。如,指定 2.4.X 版本。

清除 CocoaPods 本地缓存

特殊情况下,由于网络或者别的原因,通过 CocoaPods 下载的文件可能会有问题。

这时候您可以删除 CocoaPods 的缓存(~/Library/Caches/CocoaPods/Pods/Release 目录),再次导入即可。

查看当前使用的 SDK 版本

您可以在 Podfile.lock 文件中看到您工程中使用的 SDK 版本。

 

然后我们就可以让cocoapods安装了

pod install

恩恩恩

然后就卡在进度是Analyzing dependencies(分析相关性这里了),可以通过使用参数忽略掉升级specs库加快速度 

pod install --verbose --no-repo-update
pod update --verbose --no-repo-update

注: 不建议加入--no-repo-update 参数,若添加后仅从本地Cocoapods库中查找SDK,不再更新线上SDK。如果本地存在SDK会直接使用本地SDK版本(不是线上最新版本),若本地不存在SDK会产生错误。 也不建议使用 pod install 命令,此命令不会更新最新版本SDK。

由于 pod search 命令对新增项目可能出现无法找到的情况,建议直接使用 pod update 进行直接更新。

依据实际情况选择

等到安装信息出现以下信息就表示安装成功了

或者这样的

正常安装没有问题就可以不用这个绕墙的方法了。

安装过程的打印信息显示是0.5版本即最新版

现在重新进入项目就应该使用这样后缀的项目文件

第三方已成功加入,可以使用了。【直接使用的VPN】

 参考:

CocoaPods安装和使用教程

CocoaPods详解之—-使用篇

Cocoa​Pods

融云sdk集成说明

 

重新在另外的一台电脑安装出现了以下问题

 

Unable to add a source with url

 

cd ~/.cocoapods/repos

ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)”

brew install git

git clone https://github.com/CocoaPods/Specs.git master

参考:

 

How to use gcc or git without installing xcode?

[!] Unable to add a source with url `https://github.com/CocoaPods/Specs.git` named `master`.

上述处理过程,会弹框提示是否安装xrun/git,那么先尝试安装,安装没有问题即可不用执行以上操作,否则执行 


对podfiles添加第三方库时最好锁定版本号,因为每次pod update都会更新到最新版本。一旦版本之间差距比较大就会很麻烦,版本的升级的控制在开发者自己手里。

关于 Podfile.lock 带来的痛 _ SamirChen

CocoaPods Guides – Home

CocoaPods版本升级 – brycezhang – 博客园

cocoapods specs 镜像 _ 阿宽的博客

【投稿】CocoaPods的一些略为高级一丁点的使用 – CocoaChina_让移动开发更简单

CocoaPods详解之—-使用篇 – CSDN博客

CocoaPods安装和使用教程


 

巨坑之podfile 变为了exec可执行文件 – 简书

版权声明:本文为louyizhidu原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/louyizhidu/p/4699443.html