文章目录
  1. 1. 引言
  2. 2. 准备
    1. 2.1. 升级 Gems
    2. 2.2. 更改 RubyGems 源
  3. 3. 安装
  4. 4. 使用
    1. 4.1. 第三方类库
    2. 4.2. 更改 Spec 镜像源
  5. 5. 更新升级
  6. 6. 卸载
  7. 7. FQA
  8. 8. 参考链接
  9. 9. 文档信息

引言


What is CocoaPods

CocoaPods manages library dependencies for your Xcode projects.

The dependencies for your projects are specified in a single text file called a Podfile. CocoaPods will resolve dependencies between libraries, fetch the resulting source code, then link it together in an Xcode workspace to build your project

有兴趣的小伙伴,可以研究一下官方文档,附赠下面几个链接。
Getting StartedCocosPods BlogCocosPods Source Code on Github

准备


升级 Gems


0、查看 gem 系统版本

1
$ gem -v //查看系统版本

1、升级 gem

1
$ gem update --system //进行升级

更改 RubyGems 源


RubyGems 是 Ruby 的高级软件包管理器

0、查看系统 RubyGems 的安装源,一般系统默认镜像源为 https://rubygems.org/

1
$ gem sources -l

1、若电脑环境访问外网吃力,可用国内镜像源,目前国内可靠镜像源有: Ruby Chinahttps://gems.ruby-china.com/

1.1、将镜像源改为 https://gems.ruby-china.com/

1
2
$ gem source --remove https://rubygems.org/
$ gem sources --add https://gems.ruby-china.com/

上面两行代码可以合并成一行代码进行处理,即:

1
$ gem sources --add https://gems.ruby-china.com/ --remove https://rubygems.org/

在使用国外镜像时,如果遇到 SSL 证书问题,你又无法解决,请直接用 https://gems.ruby-china.com 避免 SSL 的问题。

更改之后后悔怎么办,可以通过下面命令重置为官方源:

1
gem sources -a https://rubygems.org/ -r https://gems.ruby-china.com/

安装


1、使用 gem 安装 Cocoapods , 输入管理员密码,回车。(注:这里指的安装是系统全局安装,不是专为某个用户安装)

1
2
3
4
5
$ sudo gem install cocoapods 
or
$ sudo gem install cocoapods -v 版本号(1.1.0) //指定版本安装
or
$ sudo gem install cocoapods --pre //安装最新版本,包括 beta 版

如系统 10.11 later 以后安装方法

1
2
3
$ sudo gem install -n /usr/local/bin cocoapods
or
$ sudo gem install -n /usr/local/bin cocoapods -v 1.7.2 //指定版本安装

2、执行 pod setup 配置 CocoaPods 的环境,实际上是更新本地类库(注:更新可能需要一些时间,请耐心等待)。

1
$ pod setup //配置 cocoapods 环境

3、搜索查看类库,如果显示查找结果,则安装成功。

1
2
3
$ pod env //查看本地 Cocoapods 安装情况
$ gem which cocoapods //查看 Cocoapods 安装路径
$ pod search YYKit(类库名)

使用


第三方类库


0、$ cd 项目目录,在项目目录下输入 pod init ,快速生成 Podfile 文件

1
$ pod search YYKit

1、打开 Podfile 文件,在其中输入想要插入的类库,比如: pod 'YYKit', '~> 1.0.1'
2、第一次使用 pod install 命令进行插入相应的类库,以后输入 pod update 命令即可。

可参考官方 Podfile 文件使用说明

1、输入 pod install,终端无响应, 可以添加相应的参数忽略 specs 库的升级:

1
2
$ pod install --verbose --no-repo-update # --verbose 可以查看到内部情况
$ pod update --verbose --no-repo-update

更改 Spec 镜像源


由于 specs 镜像在 GitHub 上,可能会导致输入 pod install 终端很长时间无响应,假如国内有个 Specs 源且访问比国外快,可进行更换 CocoaPods 镜像地址,比如:

1
2
3
$ pod repo remove master //移除本地分支
$ pod repo add master https://blog.devhitao.com/CocoaPods/Specs.git //添加镜像源
$ pod repo update //更新本地 pod 类库

由于 pod 新版本更新会导致重复 clone 一份 pod 文件下来,解决方法 Podfile 第一行加入 source 'https://blog.devhitao.com/CocoaPods/Specs.git'

更新升级


更新一般有 2 种方法,第一种方法:先卸载后安装;第二种方法:覆盖安装;第一种方法,请参考卸载和安装方法,第二种方法同样参考安装方法。

卸载


1
2
$ pod env //查看本地 Cocoapods 安装情况
$ sudo gem uninstall cocoapods -v 1.6.0 //指定版本号卸载

FQA


0、在生成 Podfile 文件时,输入 pod init,报错信息为:

1
2
xcrun: error: active developer path ("/Volumes/Xcode/Xcode.app/Contents/Developer") does not exist, 
use `xcode-select --switch path/to/Xcode.app` to specify the Xcode that you wish to use for command line developer tools (or see `man xcode-select`)

或遇到 pod setup ,提示:

1
[!] The `master` repo is not a git repo

解决方法:在终端中输入

1
$  sudo  xcode-select -s  /Applications/Xcode.app


3、通过 pod search 类库名 命令搜索出来的仓库版本低于 GitHub 上现有的版本号,或者出现 xxx (~> x.y.z) required by Podfile 错误提示方法,目前我所知的解决方法有 2 种,第一种是重新安装 CocoaPods,进而升级 CocoaPods 版本号;第二种方法是升级本地的 specs 仓库。我们这里介绍一下第二种方法:

1
$ pod setup //不要添加任何参数,静静的等待,期间可以看个电影什么的

查看更新进度,新建终端窗口

1
2
$ cd ~/.cocoapods  //切换到本地仓库源路径
$ du -sh * //可以查看文件大小的变化

据说,还可以在 GitHub 上下载镜像源进行替换,无聊的小伙伴可以试试。

1
2
3
4
5
//如果本地存在 cocoapods 文件的话,请将其移除 rm -fr ~/.cocoapods 然后在创建。
$ mkdir -p ~/.cocoapods/repos
$ git init
$ git remote add origin https://github.com/CocoaPods/Specs.git
$ git pull


4、当我们在安装 or 升级的过程中,遇到类似错误:Operation not permitted - /usr/bin/pod、 Operation not permitted - /usr/bin/xcodeproj,执行 sudo gem install -n /usr/local/bin cocoapods 进行安装即可。eg: 指定版本安装:sudo gem install -n /usr/local/bin cocoapods -v 1.3.0

Q5: 若在 Apple M1 芯片电脑上通过 gem 进行安装可能会报错,可通过下面命令解决:

1
2
3
4
5
# Did you try:
$ sudo arch -x86_64 gem install ffi

# And run: arch -x86_64 pod install instead of pod install.
arch -x86_64 pod install

参考链接


文档信息


  • 版权声明:自由转载-保持署名-非商用-非衍生 ( CC BY-NC-ND 4.0 )
文章目录
  1. 1. 引言
  2. 2. 准备
    1. 2.1. 升级 Gems
    2. 2.2. 更改 RubyGems 源
  3. 3. 安装
  4. 4. 使用
    1. 4.1. 第三方类库
    2. 4.2. 更改 Spec 镜像源
  5. 5. 更新升级
  6. 6. 卸载
  7. 7. FQA
  8. 8. 参考链接
  9. 9. 文档信息