CocoaPods简单总结

写在开头

这篇文章主要是用来总结CocoaPods的一些常见使用方法,还会补充一些常见问题的解决办法

1、什么是gem?

Gem是一个管理Ruby库和程序的标准包,它通过Ruby Gem(如 http://rubygems.org/ )源来查找、安装、升级和卸载软件包,非常的便捷。

gem软件包数据源(意思就是从哪里下载软件)

//google 
https://rubygems.org/
//taobao
http://ruby.taobao.org/
//腾讯(后缀名称已经由.org 改为 .com)
https://gems.ruby-china.com/

常见命令

//1、查看gem版本
gem --version (比如:2.6.8)

//2、更新gem
gem update --system

//3、查看数据源
gem sources

//4、删除数据源
gem sources --remove https://rubygems.org/

//5、 添加数据源
gem sources -a https://ruby.taobao.org/
“https://ruby.taobao.org/” 数据包的源地址

//6、搜索软件包
gem search 软件包关键字

//7. 安装软件包
gem install 软件包名称

//8、安装上一个版本软件包
gem install cocoapods --pre

//9、卸载安装包
gem uninstall 软件包名称

//注意:以上命令最好在使用之前, 都添加sudo, 因为有可能安装软件包的过程当中, 需要创建文件等等, 必须有管理员权限才能操作。

 

//有时ruby版本过低也导致升级失败等,解决方案如下:

//可以安装RVM(Ruby版本管理器) 升级ruby
step1: curl -L get.rvm.io | bash -s stable //安装RVM
step2: rvm -v //验证是否成功
step3: ruby -v //查看ruby版本
step4: rvm list known //4. 列出当前所有可用版本
step5: rvm install ruby --head //5. 安装指定版本ruby

注意:如果安装失败, 可能是没有安装homebrew, 先安装即可 
http://brew.sh/index_zh-cn.html

 2、使用gem 安装cocoapods


//使用gem 安装cocoapods

sudo gem install cocoapods
    
//2、 使用gem 安装cocoapods
sudo gem install cocoapods

//常见问题
//(1) 安装失败的解决方案
    
step1: sudo gem update --system // 更新 gem
step2: sudo gem uninstall cocoapods // 卸载cocoapods
step3: sudo gem install cocoapods // 安装cocoapods

//(2) 升级到10.11, CocoaPods报错: command not found, 解决方案
    
step1: sudo gem update --system // 更新 gem
step2: sudo gem uninstall cocoapods // 卸载cocoapods
step3: sudo gem install -n /usr/local/bin cocoapods // 另外一种方式安装cocoapods

//(3) 验证cocoapods 安装成功
    
 pod --version //eg: 1.2.1

 

pod install  or  pod update?

  • 按照官方文档所说,pod install 在第一次检索集成第三方以及每一次在Podfile中新增、更改或删除pod的时候使用。
  • 每一次执行pod install命令,它都会下载安装新的pod,并且会把每一个安装的pod的版本信息写入Podfile.lock文件。Podfile.lock文件跟踪每一个安装的pod的版本并且上锁。每一次执行pod install命令,只解决还没有在Podfile.lock中列出的依赖:对于已在Podfile.lock中列出的pod,会下载指定的版本,不会检查是否有新版本。对于没有在Podfile.lock中列出的pod,它会搜索并安装Podfile中指定的版本。
  • 直接执行pod update命令会检查安装Podfile中列出的所有pod的新版本(往往比较慢)。
  • 执行pod update PODNAME命令会检查PODNAME的新版本(不考虑Podfile.lock中记录的版本信息),它会把PODNAME更新为最新版本,只要跟Podfile中指定的版本匹配。也就是说,pod update PODNAME将PODNAME更新到Podfile中指定的版本,可以是更新到老版本也可以是更新到新版本,取决于Podfile。(比如:如果此时Podfile中指定了pod 'AFNetworking', '~> 2.0',此时执行pod update AFNetworking并不会把AFNetworking更新到最新版本(因为此时的版本满足大于等于2.0版),必须先修改Podfile中的版本信息才会更新到指定版本)。

两者的区别:

  1. pod install命令来安装新的pod,每次在Podfile中新增和删除pod都使用pod install命令。
  2. 在Podfile中添加新的pod后应该用pod install命令,而不是pod update命令。通过pod install命令安装新的pod而不用担心在同一进程中修改已有的pod。
  3. pod update命令仅用在更新指定pod到指定版本或者更新所有pod。

建议:该用pod install的时候不要用pod update PODNAME

另外,尽量不要用pod update,因为它是全部检查一遍,不仅慢有时候还会出现坑。比如有一个依赖的第三方库本来是2.0版本的用的好好的,因为它是国外的资源,下载起来非常慢,我们在没有bug的情况下是不希望轻易去更新它的,那么如果你上来就是一个pod update指令,OK, 如果你Podfile中指定了每次使用最新版本(不指定版本号),那么CocoaPods就会去下载最新的这个第三方库,那在下载完成之前你还要不要做其他事情了?这还是情况好的,如果这个最新的版本一直下载失败,所以一直集成失败怎么办?

 

参考文章:请点击

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值