一:CocoaPods的安装

我们可以用淘宝的Ruby镜像来访问cocoapods。按照下面的顺序在终端中敲入依次敲入

$ gem sources --remove https://rubygems.org/
//等有反应之后再敲入以下命令
$ gem sources -a http://ruby.taobao.org/

为了验证你的Ruby镜像是并且仅是taobao,可以用以下命令查看:

$ gem sources -l

只有在终端中出现下面文字才表明你上面的命令是成功的:

*** CURRENT SOURCES ***

        http://ruby.taobao.org/
这时候,你再次在终端中运行:
$ sudo gem install cocoapods

等上十几秒钟,CocoaPods就可以在你本地下载并且安装好了,不再需要其他设置。

二:CocoaPods的使用

1:建立名为Podfile的文件,在终端执行命令打开项目的根目录:再在终端执行 touch Podfile 命令来创建名为Podfile的文件。如图:

这样就在项目的根目录下创建了名为
Podfile的文件:如图: 2:手动打开或是终端打开Podfile文件:在终端执行命令: open -e Podfile

此时会打开项目根目录下的Podfile文件,可对该文件进行编辑:其中的target 后面的为项目名字,其中这些开源的框架可去github上查找,并查看用cocoapods导入的方法,所支持的版本

2:编辑好Podfile文件后,在终端执行命令: pod install.如图正在下载类库:

当执行pod install之后,除了Podfile,还会生成一个名为Podfile.lock的文件,它会锁定当前各依赖库的版本,之后即使多次执行pod install也不会更改版本,只有执行pod update才会改变Podfile.lock.在多人协作的时候,这样可以防止第三方库升级时候造成大家各自的第三方库版本不一致。所以在提交版本的时候不能把它落下,也不要添加到.gitignore中.

pod install 成功之后如图:

3:cocoapods的使用注意点:

1:从此以后需要使用Cocoapods生成的 .xcworkspace文件来打开工程,而不是使用以前的.xcodeproj文件

2:  每次更改了Podfile文件,都需要重新执行一次pod update命令

3:你如果不知道 cocoaPods 管理的库中,是否有你想要的库,那么你可以通过 pod search 命令进行查找.在终端切换到项目的根目录下:执行 pod search SDWebImage 命令,就会查找出cocoaPods所支持的SDWebImage的信息和版本如

图,可以在途中找到 含有pod 一行命令的语句,这个语句就是我们需要在Podfile文件中需要编辑的

4:cocoapods的安装和更新:在终端中切换到项目根目录下执行命令:sudo gem install cocoapods

5:cocoapods常见指令:

1:

当 团队中的某个人执行完pod install命令后,生成的Podfile.lock文件就记录下了当时最新Pods依赖库的版本,这时团队中的其它人check下来这份包含 Podfile.lock文件的工程以后,再去执行pod install命令时,获取下来的Pods依赖库的版本就和最开始用户获取到的版本一致。如果没有Podfile.lock文件,后续所有用户执行pod install命令都会获取最新版本的SBJson,这就有可能造成同一个团队使用的依赖库版本不一致,这对团队协作来说绝对是个灾难!
在这种情况下,如果团队想使用当前最新版本的SBJson依赖库,有两种方案:
  • 更改Podfile,使其指向最新版本的SBJson依赖库;
  • 执行pod update命令;
鉴于Podfile.lock文件对团队协作如此重要,我们需要将它添加到版本管理中。

Podfile.lock文件最大得用处在于多人开发。对于没有在Podfile中指定Pods依赖库版本的写法如下:

pod 'SBJson'   该命令用于获取当前SBJson这个Pods依赖库的最新版本。

2:Podfile文件存放的位置:通常情况下我们都推荐Podfile文件都放在工程根目,录事实上Podfile文件可以放在任意一个目录下,需要做的是在Podfile中指定工程的路径,和原来相比,Podfile文件就在最开始的位置增加了一行,具体内容如下: (也可以不指定,直接默认在根目录下)

此后,进入Podfile文件所在路径,执行pod install命令就会和之前一样下载这些Pods依赖库,而且生成的相关文件都放在了Podfile所在目录下面

3:Podfile 和 target:

Podfile本质上是用来描述Xcode工程中的targets用的。如果我们不显式指定Podfile对应的target,CocoaPods会创建一个名称为default的隐式target,会和我们工程中的第一个target相对应。换句话说,如果在Podfile中没有指定target,那么只有工程里的第一个target能够使用Podfile中描述的Pods依赖库。

4:使用Podfile管理pods依赖库版本

再引入依赖库时,需要显示或隐式注明引用的依赖库版本,具体写法和表示含义如下:

5:cocoaPods常用指令:

1:pod install:根据Podfile文件指定的内容,安装依赖库,如果有Podfile.lock文件而且对应的Podfile文件未被修改,则会根据Podfile.lock文件指定的版本安装。每次更新了Podfile文件时,都需要重新执行该命令,以便重新安装Pods依赖库。

2:pod update:若果Podfile中指定的依赖库版本不是写死的,当对应的依赖库有了更新,无论有没有Podfile.lock文件都会去获取Podfile文件描述的允许获取到的最新依赖库版本

3:pod search :搜索相应的依赖库,将含有pod的命令添加到Podfile文件中

4:pod setup:这条命令用于更新本地电脑上的保存的Pods依赖库tree。由于每天有很多人会创建或者更新Pods依赖库,这条命令执行的时候会相当慢,还请耐心等待。我们需要经常执行这条命令,否则有新的Pods依赖库的时候执行pod search命令是搜不出来的。

5:## CocoaPods

- 若没有写上版本号,则cocoapods默认安装最新的版本,且适配platform下的ios版本。第一次执行podInstall,此时还没有生成Podfile.lock文件,当安装完毕后,会生成Podfile.lock文件,记录 所有第三方框架的版本号,此后在执行pod install,则只会会根据Podfile.lock文件中列举的版本号来安装第三方框架

- Podfile.lock文件

- 最后一次更新Pods时, 所有第三方框架的版本号

- 常用指令的区别:两个方法都会将最新版本从服务器下载到电脑缓存起来,根据指令不同安装不同的版本

- pod install

- 会根据Podfile.lock文件中列举的版本号来安装第三方框架

- 如果一开始Podfile.lock文件不存在, 就会按照Podfile文件列举的版本号来安装第三方框架

- 安装框架之前, 默认会执行pod repo update指令

- pod update

- 将所有第三方框架更新到最新版本, 并且创建一个新的Podfile.lock文件

- 安装框架之前, 默认会执行pod repo update指令

- pod install --no-repo-update

- pod update --no-repo-update

- 安装框架之前, 不会执行pod repo update指令

podfile文件编辑如图:platform之后的ios为小写,并标明项目的版本号,若是pod的文件没有标明版本号,则第一次执行pod install的时候,默认系在的都是最新的版本。有时候会执行pod install 命令时会出现系在依赖库失败的情况,可能的原因是电脑本地的依赖库不是最新的,需要更新到最新,所以执行pod update,更新最新的依赖库,此时的Podfile.lock文件记录的版本号也会更新,非第一次执行pod install,系统会根据
Podfile.lock文件记录的版本号区更新依赖库,只有执行pod update之后,才会更新现有的依赖库。


 

二:新浪微博:第三方框架管理工具CocoaPods的安装和使用的更多相关文章

  1. iOS包管理工具Cocoapods的安装与使用

    转自:http://www.sxt.cn/u/10014/blog/6448 在我们开发移动应用的时候,一般都会使用到第三方工具,而由于第三方类库的种类繁多,我们在项目中进行管理也会相对麻烦,所以此时 ...

  2. OS X第三方类库管理工具cocoapods入门

    一.简介 什么是cocoapods?--是OS X和iOS下一个第三方类库管理工具.通过cocoapods,可以为项目添加"Pods"依赖库,并且管理其版本. cocoapods好 ...

  3. IOS开发依赖管理工具CocoaPods

    CocoaPods IOS开发依赖管理工具 CocoaPods is a dependency manager for Swift and Objective-C Cocoa projects. It ...

  4. Linux进程管理工具Supervisor的安装配置

    目录 Linux进程管理工具Supervisor的安装配置 简介 安装Python包管理工具 安装Supervisor 配置 配置文件参数说明 配置进程管理 启动supervisor 控制进程 交互终 ...

  5. cocoaPods框架管理工具使用

    前言:文中的"$"表示命令行,使用使不需要包含 cocoaPods的安装 因为cocoaPods需要用Gem进行安装,所以如果系统比较旧需要先升级Gem $ sudo gem up ...

  6. iOS开发者的管理工具-CocoaPods安装

    1. 安装 Ruby 对于iOS开发者,CocoaPods是最方便使用的第三方管理工具了,但是怎么安装CocoaPods呢,安装CocoaPods之前,要确保mac已经安装上Ruby,但在安装Ruby ...

  7. 安装和使用iOS的包管理工具CocoaPods

    CocoaPods是ruby实现的,需要用ruby进行安装,mac自带ruby,如果没有ruby的需要先安装ruby.   安装CocoaPods命令 安装CocoaPods命令:sudo gem i ...

  8. Kafka集群管理工具kafka-manager的安装使用

    一.kafka-manager简介 kafka-manager是目前最受欢迎的kafka集群管理工具,最早由雅虎开源,用户可以在Web界面执行一些简单的集群管理操作.具体支持以下内容: 管理多个集群 ...

  9. kafka集群管理工具kafka-manager部署安装

    一.kafka-manager 简介 为了简化开发者和服务工程师维护Kafka集群的工作,yahoo构建了一个叫做Kafka管理器的基于Web工具,叫做 Kafka Manager.这个管理工具可以很 ...

随机推荐

  1. 36.intellij idea 如何一键清除所有断点

    转自:https://www.cnblogs.com/austinspark-jessylu/p/7799212.html 1.在idea左下方找到"View Breakpoints&quo ...

  2. C# 反射基础运用

    反射是.NET中的重要机制,通过反射,可以在运行时获得程序或程序集中每一个类型 (包括类.结构.委托.接口和枚举等)的成员和成员的信息. 其实有些人会问, 像我们平常引用DLL可以直接用, 为什么要用 ...

  3. android-5.1编译配置(van)

    必备文件: archives1211.tgz ubuntu_install_1204.tgz 安装指引: ubuntu_install_1204/readme.txt 工作目录结构: git ├── ...

  4. LayoutAnimation-容器动画

    1.LayoutAnimation的作用主要就是加载到一个layout上,让这个layout里面的所有控件都有相同的动画效果.现在用到的是在listview中添加动画,使得它每一个item都是滑落显示 ...

  5. matlab 局部特征检测与提取(问题与特征)

    物体识别:SIFT 特征: 人脸识别:LBP 特征: 行人检测:HOG 特征: 0. 常见手工设计的低级别特征 manually designed low-level features 语音:高斯混合 ...

  6. 7.zookeeper集群搭建(windows环境下)

    转自:https://www.cnblogs.com/xuxiuxiu/p/5868481.html 本次zk测试部署版本为3.4.6版本,下载地址http://mirrors.cnnic.cn/ap ...

  7. 94.文件bat脚本自删除

    taskkill / f / im 自删除.exedel 自删除.exedel 1.bat void main() { FILE *pf = fopen("1.bat", &quo ...

  8. WINWORD.EXE-损坏的图像

    问题详情: 系统键  + R键,运行 再输入regedit HKEY_CLASSES_ROOT\.docx HKEY_CLASSES_ROOT\Word.Document.12 HKEY_CURREN ...

  9. 前端面试题(HTML/CSS)

    (前端面试题大全,持续更新) 常用的块级元素和行内元素有哪些?说说他们的特点? 浮动产生的原因?清除浮动? 说说一下盒模型 float和position一起用是什么效果 rem用过吗?做不同手机的适配 ...

  10. Django模板变量,过滤器和静态文件引用

    模版路径查找 首先去settings.py里面找TEMPLATES ,在TEMPLATES下面找DIRS,找到就返回,没找到就继续往下,如果APP_DIRS设置为为Ture,那么就会到上面 INSTA ...