CocoaPods学习笔记

CocoaPods(https://github.com/CocoaPods/CocoaPods)用来管理其他第三方库的工具。

CocoaPods的核心组件

Ruby是一种脚本语言,Gem是基于Ruby的一些开发工具包。cocoaPods是一组Gem。

CocoaPods是用Ruby写的,并划分成了若干个Gem包。

CocoaPods在解析执行过程中最重要的几个包的路径分别是:CocoaPods/CocoaPods、CocoaPods/Core和CocoaPods/Xcodeproj。

CocoaPods / CocoaPod:这是面向用户的组件,每当执行一个pod命令时,这个组件将被激活。它包括了所有实用CocoaPods的功能,并且还能调用其他gem包来执行任务。

CocoaPods / Core:Core gem提供了与CocoaPods相关的文件(主要是podfile和podspecs)的处理。

Podfile:该文件用于配置项目所需要的第三方库,它可以被高度定制。本文中我们主要在这里做动作。

Podspec:该文件描述了一个库将怎样被添加进工程中。.podspec文件可以标识该第三方库所需要的源码文件、依赖库、编译选项,以及其他第三方库需要的配置。

CocoaPods / Xcodeproj:这个包负责处理工程文件,它能创建以及修改.xcodeproj文件和.xcworkspace文件。它也可以作为一个独立的包使用,当你要编写修改项目文件的脚本时,可以考虑使用CocoaPods/Xcodeproj。

安装运行

Ruby

运行需要Ruby环境,Mac  OS本身自带Ruby,但是记得更新Ruby,否则容易安装CocoaPods失败。

检查版本:Ruby -v

终端输入如下命令(把Ruby镜像指向taobao,避免被墙)

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

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

gem sources -l  (查看镜像)

更新Ruby:gem update --system(如果提示错误是因为没有权限,此时添加sudo命令在前面即可:sudo gem update —system)

CocoaPod

下载安装CocoaPod:sudo gem install cocoapods

查看命令帮助:pod --help

Podfile文件是CocoaPad应用于每个项目中的配置文件;

网上普遍教我们使用命令行来创建Podfile文件,还要遵从其格式规范。其实查看pod --help命令行帮助可以看到,新版的pods,有init命令,可以帮助我们创建一个新的Podfile文件,并写好头部说明信息。我们只要再通过pod search找到所需要的库。再将所符合的库格式信息拷贝进Podfile文件即可。

下载Podfile文件中的三方库:pod install

更新Podfile中的三方库:pod update

最近使用CocoaPods来添加第三方类库,无论是执行pod install还是pod update都卡在了Analyzing dependencies不动

原因在于当执行以上两个命令的时候会升级CocoaPods的spec仓库,加一个参数可以省略这一步,然后速度就会提升不少。加参数的命令如下:

pod install --verbose --no-repo-update 

pod update --verbose --no-repo-update

(不更新 spec-repositories,可通过--help 命令查看 repo相关操作)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • CocoaPods 是什么? CocoaPods 是一个负责管理 iOS 项目中第三方开源库的工具。CocoaPo...
    朝洋阅读 25,864评论 3 50
  • 项目组件化、平台化是技术公司的共同目标,越来越多的技术公司推崇使用pod管理第三方库以及私有组件,一方面使项目架构...
    swu_luo阅读 22,698评论 0 39
  • 作为一个入门不久的初级开发人员,本着一个自我知识整理归档地目的,概括性地介绍下 CocoaPods 的安装与使用。...
    丶生如夏花阅读 1,865评论 0 0
  • 今天见证了一个小生命的诞生,那种感动无语言表,孩子的妈妈是我06级的学生,如今也是一名教师,感恩宇宙,让她顺利生产...
    喜悦和平的冬梅阅读 2,224评论 0 0
  • 我本是天地一指流沙,只因有你,永世长存。 我本是人间一位隐士,只因有你,堕入红尘。 我本是佛家一名高...
    易清幽阅读 3,161评论 2 5