随着工作的年限的增长,会经常的接触到不同的三方开源框架。比如SDWebImage,AFNetworking,MJRefresh,可能某个类又用到其他的类库,如果使用它,就必须要下载其他的库。而其他的库,如果有关联着别的库,这样的话,子子孙孙无穷无尽,岂不是头疼死?那么如何处理这种情况呢?
使用 CocoaPods 去管理类库,通过CocoaPods 一行命令解决所有,那么,CocoaPods 如何使用呢?
一、
- 安装CocoaPods时我们要访问cocoapods.org,该网站可能被我们大天朝墙了,这样下载安装可能会是龟速,幸好我们可以用淘宝或阿里云的Ruby镜像来访问该网站,方法如下:
- a、检查你的ruby源: gem sources -l
- b、移除原有的ruby源: gem sources --remove https://rubygems.org/
- c、gem sources -ahttps://ruby.taobao.org/ 或者
- gem sources -ahttp://rubygems-china.oss.aliyuncs.com
- d、gem sources -l 检查使用替换镜像位置成功
- e、gem -v 检查当前gem的版本
- f、sudo gem update —system 用超级权限更新gem
- 安装 RVM (Ruby Version
Manager) :
- a. 检查一下是否安装正确: rvm -v
- b. curl -L https://get.rvm.io | bash -sstable
- c. source ~/.rvm/scripts/rvm
- d. 检查一下是否安装正确: rvm -v
- 用 RVM 升级 Ruby 环境(mac自带的ruby是 2.0.0):
- 列出ruby的所有版本rvmlist known
- 安装最新的ruby版本 rvm
install 最新的版本号如2.2
- 设置最新版本为默认 rvm 2.3.0—default 或者 rvm use system(设置为系统的版本)
- 安装Cocoapods: a. sudo gem install cocoapods 若出Operation not
permitted - /usr/bin/xcodeproj错了可执行 sudo gem install -n /usr/local/bin cocoapods (更新:pod
update);若出现 activesupport requires Ruby version >= 2.2.2错误,执行更新ruby版本 b. pod setup初始化cocoapods(第1次会出现 Setting
up CocoaPods master repo ,表示正在下载,若出现56的错误代码:
- 首先,删除.cocoapods目录,在终端输入以下命令:
cd ~/.cocoapods/
sudo -rm -rf ~/.cocoapods/
然后,重新下载安装,在终端输入以下命令:
pod setup
) (1.which pod :查询pod的路径,是否安装成功 2. 遍历文件夹路径并查看当前文件夹的大小:cd ~/.cocoapods 和 du -sh * 3.which pod查看pod的路径)
- Cocoa pods的初使用查询:pod search 第三方 如:AFNetworking
- 正式使用Cocoa pods:
- cd CocoaPodsDemo
(首先创建一个X-code项目,先起名为CocoaPodsDemo,进入该文件夹,将项目创建到桌面为例)
- 进入x-code工程文件夹后查看目录:
- ls
- 创建Podfile文件(负责管理什么库需要下载):
$touch Podfile
- pod search AFNetworking(搜索要下载的第三方库)
- 编辑podfile(两种方式): cd 项目路径; touch
Podfile(创建Podfile文件)
- a. 打开Profile文件,并输入(TestPod为项目的名字)
- platform :ios, '8.0'
- #use_frameworks!个别需要用到它,比如ReactiveCocoa
target 'TestPod' do
- pod 'AFNetworking', '~> 2.6'
- pod 'ORStackView', '~> 3.0'
- end
b.vim Podfile进入终端编辑界面,输入
- (TestPod 为项目的名字)
- platform :ios, '8.0'
- #use_frameworks!个别需要用到它,比如reactiveCocoa
target 'TestPod' do
- pod 'AFNetworking', '~> 2.6'
- pod 'ORStackView', '~> 3.0'
- end
按esc,按: ,再按wq enter。(
#use_frameworks!个别需要用到它,比如reactiveCocoa
)
- pod install(开始安装)等待即:你主需要关心后缀为.xcworkspace的文件,用Xcode打开。现在有一个Pods项目在你的项目工作区
一. 删除篇:删除项目中已经配置的类库
- open -e pod file (打开Podfile文件,删除JSONKit该行,即:
platform:ios, '7.0' pod 'AFNetworking', '~> 2.1.0'pod'JSONKit', '~> 1.5pre'(删除该行)
2.cd到当前项目目录下,重新执行pod
install命令。
输出信息如下(留意Removing
JSONKit)
3.重新打开xcworkspace文件,可以看到JSONKit被移除,再次编译将会通过。
大招:从整个项目中移除CocoaPods
如果你觉得CocoaPods让你的项目出现了问题,不好用甚至是恶心,想将其从项目中彻底移除,也有方法:
1.删除工程文件夹下的Podfile、Podfile.lock和Pods文件夹。
2.删除xcworkspace文件。
3.打开xcodeproj文件,删除项目中的libpods.a和Pods.xcconfig引用:
4.打开Build Phases选项,删除Check
Pods Manifest.lock和Copy Pods Resources: