公司电脑莫名奇妙的没有了 Cocoapods 环境,所以又重新安装了一下,在此做一个记录。

安装

Mac 下都自带 ruby,使用 rubygem 命令即可下载安装。

打开 Terminal,然后输入以下命令:

sudo gem install -n /usr/local/bin cocoapods
pod setup

# 注意:苹果系统 OS X EL Capitan(版本10.11.3) 后安装代码:sudo gem install -n /usr/local/bin cocoapods

10.11之前用 sudo gem install cocoapods

如果 gem 版本太老,可以尝试用如下命令升级 gem:

sudo gem update --system

还有一点需要注意,pod setup 在执行时,会输出 Setting up CocoaPods master repo,但是会等待比较久的时间。这步其实是 Cocoapods 在将它的信息下载到 ~/.cocoapods 目录下。

另外,ruby 的软件源 https://rubygems.org 被墙了,为了方便我们使其替换为国内淘宝的源:

查看 Ruby 源

gem sources -l

移除现有 Ruby 默认源

gem sources --remove https://rubygems.org/

将 Ruby 源指向淘宝镜像

gem sources -a https://ruby.taobao.org/

检测和重新安装

最后检查 pod 是否安装

pod --version 

在这里能检测到版本就代表已经安装

如果出现 pod: command not found,说明还没有安装。

如果已安装想要重新安装,输入以下命令卸载 pod:sudo gem uninstall cocoapods

然后执行安装下载命令

sudo gem install -n /usr/local/bin cocoapods
pod setup

使用

新建一个项目,在终端 cd 到该项目的根目录下

pod init

打开生成的 Podfile 文件并设置

# Uncomment the next line to define a global platform for your project
# platform :ios, '9.0'

target 'TestCocos' do
  # Uncomment the next line if you're using Swift or would like to use dynamic frameworks
  # use_frameworks!

  # Pods for TestCocos

pod 'MBProgressHUD', '~> 1.0.0'
pod ‘AFNetworking’, ‘~> 3.1.0’

end

Podfile 文件设置成功后

pod install

CocoaPods 会帮我们下载好代码,设置好编译参数,配置好 framework, library。

查找第三方库

你如果不知道 cocoaPods 管理的库中,是否有你想要的库,那么你可以通过 pod search 命令进行查找,例如查找 afnetworking

$ pod search afnetworking

-> AFNetworking (3.1.0)
   A delightful iOS and OS X networking framework.
   pod 'AFNetworking', '~> 3.1.0'
   - Homepage: https://github.com/AFNetworking/AFNetworking
   - Source:   https://github.com/AFNetworking/AFNetworking.git
   - Versions: 3.1.0, 3.0.4, 3.0.3, 3.0.2, 3.0.1, 3.0.0, 3.0.0-beta.3, 3.0.0-beta.2, 3.0.0-beta.1,
   2.6.3, 2.6.2, 2.6.1, 2.6.0, 2.5.4, 2.5.3, 2.5.2, 2.5.1, 2.5.0, 2.4.1, 2.4.0, 2.3.1, 2.3.0, 2.2.4,
   2.2.3, 2.2.2, 2.2.1, 2.2.0, 2.1.0, 2.0.3, 2.0.2, 2.0.1, 2.0.0, 2.0.0-RC3, 2.0.0-RC2, 2.0.0-RC1,
   1.3.4, 1.3.3, 1.3.2, 1.3.1, 1.3.0, 1.2.1, 1.2.0, 1.1.0, 1.0.1, 1.0, 1.0RC3, 1.0RC2, 1.0RC1,
   0.10.1, 0.10.0, 0.9.2, 0.9.1, 0.9.0, 0.7.0, 0.5.1 [master repo]
   - Subspecs:
     - AFNetworking/Serialization (3.1.0)
     - AFNetworking/Security (3.1.0)
     - AFNetworking/Reachability (3.1.0)
     - AFNetworking/NSURLSession (3.1.0)
     - AFNetworking/UIKit (3.1.0)

-> AFNetworking+AutoRetry (0.0.5)
   Auto Retries for AFNetworking requests
   pod 'AFNetworking+AutoRetry', '~> 0.0.5'
   - Homepage: https://github.com/shaioz/AFNetworking-AutoRetry
   - Source:   https://github.com/shaioz/AFNetworking-AutoRetry.git
   - Versions: 0.0.5, 0.0.4, 0.0.3, 0.0.2, 0.0.1 [master repo]