cocoapods 类库管理利器
作为iOS开发者,第三方类库的使用是最经常的,但鉴于第三方类库的不断更新以及其可能需要依存其他类,如果要使用最新版那么我们需要重新下载再添加到项目中,无疑带来一些繁琐的麻烦,那么现在这里就有一款能解决这个问题的工具————cocoapods, 类库管理工具。 它使用不是很复杂,只需要几条命令,我们应该要掌握它。
一、配置安装环境
安装开发工具: Xcode
因为cocoapods需要Ruby环境,你可以借助第三方软件Rvm来更新管理它,首先是安装Rvm,打开Mac终端,输入:
curl -L http://get.rvm.io | bash -s stable
查看Rvm版本:
rvm -v
加载启用Rvm:
source ~/.rvm/scripts/rvm
安装更高版本的Ruby(系统自带的版本太低),需要一点时间等待:
rvm install 2.0.
如果安装不行,可能是因为Ruby使用的源为cocoapods.org,安装网上建议的换成淘宝的源:
gem sources --remove http://rubygems.org/
gem sources -a https://ruby.taobao.org/
换好了后可以使用一下命令查看:
gem sources -l
显示结果为:
CURRENT SOURCES http://ruby.taobao.org/
安装好之后,查看ruby版本2.0:
ruby -v
设置Ruby 2.0为默认版本:
rvm default 2.0.
二、安装cocoapods
在终端输入如下安装命令 (在执行pod setup命令时,时间可能有点长,我等了30多分钟,以为是卡在这里了,反复强行结束终端几次,最后没管它,一段时间后看成功了):
sudo gem install cocoapods
pod setup
三、cocoapods的使用之AFNetworking例
首先,我们可以试下如下命令搜索,看看cocoapods是否支持AFNetworking(是支持的,具体结果我就不贴出来了):
pod search AFNetworking
然后,切换到你需要添加类库的iOS程序文件夹根目录,比如你在桌面建立了一个cocoapodstest01的项目,那么你在终端用cd命令切换到这个文件夹下:
cd /Users/xxx用户名/Desktop/cocoapodsTest01/
建立一个名为Podfile的文件:
vim Podfile
然后再Podfile中输入如下命令(这个命令是开发AFNetworing的作者给你的):
platform :ios, '7.0'
pod "AFNetworking", "~> 2.0"
然后输入如下命令保存退出:
:wq
继续输入命令,利用cocoapods下载AFNetworing类库:
pod install
最终成功的结果输出如下:
EricmatoMacBook-Pro:CocoaPodsDemo ericwang$ pod install
Analyzing dependencies
Downloading dependencies
Installing AFNetworking (2.0.)
Generating Pods project
Integrating client project [!] From now on use `CocoaPodsDemo.xcworkspace`.
这里的结果最后有个 CocoaPodsDemo.xcworkspace文件,我们在桌面的项目文件中,需要打开这个文件,而不是xcodeproj文件,这是你会看到AFNetworing已经成功导入了,你直接引用头文件测试吧!
更新第三方类库,需要切换到Podfile统一目录下,输入如下命令:
pod update
cocoapods 类库管理利器的更多相关文章
- OS X第三方类库管理工具cocoapods入门
一.简介 什么是cocoapods?--是OS X和iOS下一个第三方类库管理工具.通过cocoapods,可以为项目添加"Pods"依赖库,并且管理其版本. cocoapods好 ...
- Xcode push带有cocoapods类库的项目到git仓库
关于git之一点不熟悉,以前公司的项目搭建,版本控制这块,都是有专门的人在做,当然那时候也是用的git项目中也包含了cocoapods类库,当前公司比较闲, 所以研究了下git,用的是git.osch ...
- [转]Linux后台进程管理利器:supervisor
FROM : http://www.liaoxuefeng.com/article/0013738926914703df5e93589a14c19807f0e285194fe84000 Linux后台 ...
- CocoaPods:管理Objective-c 程序中各种第三方开源库关联
在我们的iOS程序中,经常会用到多个第三方的开源库,通常做法是去下载最新版本的开源库,然后拖拽到工程中. 但是,第三方开源库的数量一旦比较多,版本的管理就非常的麻烦.有没有什么办法可以简化对第三方库的 ...
- Docker&Kubernetes沙龙干货集锦:容器集群管理利器kubernetes详谈-CSDN.NET
Docker&Kubernetes沙龙干货集锦:容器集群管理利器kubernetes详谈-CSDN.NET undefined Package - crawler undefined 科学网- ...
- Cocoapods依赖管理
对于iOS App的开发,几乎都采用了Cocoapods来管理第三方库,那么对于开发人员来说,这是必备技能,必须要掌握如何使用.这篇文章就是介绍如何安装和使用CocoaPods的. 简单来说,就是专门 ...
- KVM镜像管理利器-guestfish使用详解
原文 http://xiaoli110.blog.51cto.com/1724/1568307 KVM镜像管理利器-guestfish使用详解 本文介绍以下内容: 1. 虚拟机镜像挂载及w2k8 ...
- linux下远程管理利器-tmux
linux下远程管理利器-tmux 1.控制键 控制键就是tmux的主键.当你在tmux环境下按下这个键的时候,tmux就会把你后面输入的指令,解析成它内置的功能.tmux默认的控制键是 ...
- scribefire 多博客管理利器 安装详解
scribefire 多博客管理利器 安装详解 一.ScribeFire介绍 ScribeFire 是 Firefox (火狐浏览器)上著名的博客写作工具,目前已跨平台支持多浏览器(Firefox,C ...
随机推荐
- python 3.x 安装问题及连接oracle数据库
最近有用到python去处理一些问题,发现现在3已出来,遂用直接下3.7使用 发现问题还是有一点的 1. pip 会出现ssl问题 Could not install packages due to ...
- string中执行sql语句
Spring(JdbcTemplate.class)中的queryForMap().queryForObject().queryForLong().queryForInt()等方法都会去调用publi ...
- 实现一个类似bootstrap的多级下拉菜单
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 035 Search Insert Position 搜索插入位置
给定一个排序数组和一个目标值,如果在数组中找到目标值则返回索引.如果没有,返回到它将会被按顺序插入的位置.你可以假设在数组中无重复元素.案例 1:输入: [1,3,5,6], 5输出: 2案例 2:输 ...
- Java中的continue语句——通过示例学习Java编程(12)
作者:CHAITANYA SINGH 来源:https://www.koofun.com//pro/kfpostsdetail?kfpostsid=23 continue语句主要是用在循环代码块中.当 ...
- a标签嵌套a标签效果的两种解决方案
<!-- a标签进行嵌套的时候 --> <a href="#outer">outerA <a href="#inner">i ...
- [转] eclipce使用vim 开启装逼模式
原文:http://blog.csdn.net/fatal360/article/details/12321613 1.在eclipse中使用vi模式的插件Vrapper打开eclipse,在Help ...
- git版本分支和分支、分支和主分支切换
问题描述: 公司里项目管理使用的是gitLab(收费的), 如果开发人员提交代码, 需要首先创建一个分支, 然后把代码提交到你创建的分支上去(不允许把代码直接提交到主分支上). 在代码提交到已经创建 ...
- 【ros-kinetic iai_kinect2 opencv2 3 】注意事项
iai_kinect2 : https://github.com/code-iai/iai_kinect2/tree/master/kinect2_registration kinect2_brid ...
- python3基础01(常见语法基础汇总)
#!/usr/bin/env python# -*- coding:utf-8 -*- # 换行\n 续行\ s[:i] + s[i:] 等于 s#转义 \e 空 \000 八进制 \oyy 十六进制 ...