锻炼吃饭的家伙

CocoaPods 的安装使用

2015-11-26  本文已影响214人  _白丁_

CocoaPods是 iOS 开发中最常用的第三方类库管理工具
使用它可免去手动添加 一些 依赖库,并且管理也很方便
CocoaPods是用Ruby实现的、
Mac OS X 系统默认可以运行Ruby,因此我们只需执行以下命令便可以安装:

加一点小插曲、自从本人pod 升级到 0.39.0 之后、
印象笔记SDK出了一些莫名其妙的问题、无奈之下降级...
又回到了 0.38.0 的版本

第1步 打开终端输入安装指令

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

如果你想安装指定的版本
例如: 只想安装pod 0.38.0 的版本

执行如下命令

sudo gem install -n /usr/local/bin cocoapods -v 0.38.0 旧版已不能用
sudo gem install -n /usr/local/bin cocoapods -v 1.1.0

如果你在安装的过程中、出现了下面的错误: (为方便观看,该错误我已经添加了换行..)

ERROR: Could not find a valid gem 'cocoapods' (>= 0), 
here is why: Unable to download data from 
https://rubygems.org/ - Errno::EPIPE: Broken pipe - SSL_connect 
(https://rubygems.org/latest_specs.4.8.gz)

我们伟大的天朝...你懂的... (此处省略一大片文字)
所以你需要更换 淘宝的 RubyGems 镜像 来代替官方的

  1. 删除官方的 ruby
  2. 添加淘宝的 ruby

执行如下命令:

 gem sources -l  
 gem sources --remove https://rubygems.org/
 gem sources -a https://ruby.taobao.org/
 gem sources -l

这时在终端中出现下面文字,
说明已经成功的将 ruby 源换成了 taobaoruby 源了

*** CURRENT SOURCES ***
http://ruby.taobao.org/

重新执行第1步的安装指令

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

如果在安装时,出现以下错误,那么你需要将 ruby 升级至指定的版本以上
如图所示,要求我的 ruby 版本要 >=2.2.2 好吧,那就来吧。

Paste_Image.png

如果没有安装 Homebrew 执行以下指令安装 Homebrew

// 安装 homebrew
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
// 通过 rvm 来管理 ruby
curl -L https://get.rvm.io | bash -s stable
// 启用 rvm 指令
source ~/.rvm/scripts/rvm

如果安装 homebrew 时出现如下错误

/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- mach (LoadError)
    from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /usr/local/Library/Homebrew/extend/pathname.rb:2:in `<top (required)>'
    from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /usr/local/Library/Homebrew/global.rb:3:in `<top (required)>'
    from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /usr/local/Library/brew.rb:15:in `<main>'
ERROR: '/bin' is not writable - it is required for Homebrew, try 'brew doctor' to fix it!
Requirements installation failed with status: 1.

有可能是你更新 mac 系统造成的,我是通过卸载重装 homebrew 来解决这个问题的

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

然后你就可以痛快的 安装 2.2.2 版本的 ruby 啦


// 安装 ruby 2.2.2 
rvm install 2.2.2
// 默认使用 2.2.2 版本的 ruby
rvm use 2.2.2 --default

成功后
你会看到类似这样的信息


gems installed 成功

这个时候你可以使用pod指令查看一下pod版本

pod --version 

安装完 cocoapods 之后你需要初始化第三方库的信息

pod setup

如果以后需要更新第三方库的信息

 pod repo update

如何在新的项目中使用 cocoapods

首先需要进入项目

 cd imooc

在项目中创建 Podfile 文件
在终端输入

vim Podfile

按 i 键进入编辑模式后输入需要支持的版本以及第三方库的名称

platform :ios, "8.0"
target '你的项目名' do
use_frameworks!
pod 'SDWebImage', '~>3.7' // 需要使用的第三方
end

完成后 esc 退出编辑模式

输入指令 :wq 退出保存

 :wq 

开始在项目中安装 cocoapods

pod install

如果你使用的是 cocoapods-xcode-plugin 的插件
那么你再 Xcode product 选项卡选择 CocoaPods -> Create/Edit Podfile 如下图所示

Paste_Image.png

然后你将配置补充完善

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, "8.0"
use_frameworks!

pod "ReactiveCocoa"

target :ReactiveCocoaDemo, :exclusive => true do
  # pod 'Kiwi'
end

其中 target :ReactiveCocoaDemo
ReactiveCocoaDemo 就是你的项目名称
注意这里不能有中文!

配置完毕 Podfile 文件后,请关闭 Podfile 文件
继续选择 Xcode product 选项卡选择 CocoaPods -> install pods 如下图所示

Paste_Image.png

关于 Podfile 文件,第三方库版本号的各种写法:

pod ‘AFNetworking’            //不显式指定依赖库版本,表示每次都获取最新版本
pod ‘AFNetworking’, ‘2.0’     //只使用2.0版本
pod ‘AFNetworking’, ‘>2.0′    //使用高于2.0的版本
pod ‘AFNetworking’, ‘>=2.0′   //使用大于或等于2.0的版本
pod ‘AFNetworking’, ‘<2.0′    //使用小于2.0的版本
pod ‘AFNetworking’, ‘<=2.0′   //使用小于或等于2.0的版本
pod ‘AFNetworking’, ‘~>0.1.2′ //使用大于等于0.1.2但小于0.2的版本,相当于>=0.1.2并且<0.2.0
pod ‘AFNetworking’, ‘~>0.1′   //使用大于等于0.1但小于1.0的版本
pod ‘AFNetworking’, ‘~>0′     //高于0的版本,写这个限制和什么都不写是一个效果,都表示使用最新版本

卸载 cocoapods

请在终端 输入 卸载指令 如下所示
其中-v 3.38.0 是想要卸载的pod版本号 当然也可以不写

gem list
sudo gem uninstall cococapods -v 3.38.0

如果你同时安装了多个版本

sudo gem uninstall cocoapods
选择你不想要的版本进行卸载

选择你不想要的版本进行卸载
我输入 (2) 删除 0.39.0的版本

然后再查看一下
只剩下一个 0.38.0 的 版本了

pod --version
0.38.0

brew install CocoaPods
brew upgrade CocoaPods
brew uninstall CocoaPods

如果你觉得我的文章对你有帮助,向我发个红包吧!
我将衷心德感谢你对我的支持!你的支持就是我的动力!

微信扫码向我发红包

微信.jpeg

支付宝扫码向我发红包

支付宝.jpeg
上一篇 下一篇

猜你喜欢

热点阅读