美文网首页
CocoaPods小记

CocoaPods小记

作者: a_超 | 来源:发表于2015-12-29 10:45 被阅读259次

最近Mac 10.13又出了个小坑,更新完之后POD就不能用了,只能重新安装一次。

安装


因为Mac OS El Capitan操作权限的问题我们在安装pods的时候需要指定一个路径,比如usr/local/bin,另外就是网络封锁的问题最好是将原本的ruby源修改以下。

setup的过程可能很慢,主要是因为第一次安装它会去下载repo库,这玩意儿有几百兆接近1个G,如果有其他小伙伴的电脑已经安装好了,可以直接从 ~/.cocoapods/ 里面拷贝过来。

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

gem sources -a https://gems.ruby-china.com/

sudo gem update -n /usr/local/bin --system

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

pod setup

更新


如果发现Pods上搜索出来的代码库与GitHub上面的不同步,可以尝试更新下Pods的repo库。

pod repo update

如果是想更新pods的版本,可以通过类似重新安装的形式。

sudo gem update -n /usr/local/bin  --system

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

pod setup

卸载


用uninstall命令就可以卸载pods了。

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

如果你安装了多个Pods版本,这时候就需要选择一个要卸载的版本:

Select gem to uninstall:

1. cocoapods-0.37.2

2. cocoapods-0.39.0

3. All versions

> 3

使用


Pods的使用方式很简单,不过需要注意字符编码的问题,UTF-8。打开终端进入到你的工程目录(与.xcodeproj文件同级),使用vim命令创建pod管理文件:

cd /具体工程路径

vim podfile

按 i 键进入编辑模式,键入(platform和 : 之间是要有空格的):

platform :ios, '7.0'

target "项目名" do

     pod 'AFNetworking'

end

target xxx do xxx end 的书写方式是在pod 1.0.0之后出现的,现在都是按这种形式了。按esc键退出编辑模式,键入 :wq 回车结束编辑。接下来搜索你想要的库,比如需要引入AFNetworking库,则可以使用search命令在终端进行模糊搜索:

pod search AFNetworking

AFNetworking搜索结果

红色方框的部分是住重要的,版本号可以根据需要选择,具体的格式就是

pod '第三方库名称', '~> 版本号'

再次采用vim命令打开podfile文件,按 i 键进入编辑模式,新起一行键入

pod 'AFNetworking', '~> 3.0.0-beta.2'

按esc退出编辑模式,键入 :wq 结束编辑,重点来了。

pod install

install命令执行之后,就会根据你podfile里面的配置开始载入第三方库,同时会在同级目录生成一个 .xcworkspace 文件,以后的项目入口就是这个文件了。

有了这个文件之后,如果想要再编辑podfile文件,就可以直接在xcode里面开干了,只是install命令还是得在终端执行。

需要注意的是,podfile文件的编码格式一定要是UTF-8的,并且每次新增或删除一个第三方库都要执行一次install命令才会生效。

小坑


1. 如果你的项目使用POD管理,并且用到了某个库(比如A),后面又把A库给删除了,编译出现Apple Mach-O link Error的话,可以把项目中的other link flag中的值都删掉,只保留$(inherited)。

2. 如果安装遇到『ERROR:  While executing gem ... (TypeError) no implicit conversion of nil into String 』这种错误,需要先更新下system,Mac10.13之后需要用-n来指定路径。

sudo gem update -n /usr/local/bin --system

后记


总的来说Pods还是很方便的,被Pods管理的第三方库通常会被锁定禁止修改,如果你想要修改第三方库也不是不行,不过对于这种库主页君则是倾向于采用手动导入的方式,避免后面升级库时带来麻烦。

如果你的项目一开始就采用Pods来管理,那就没什么问题。如果是旧项目改造,则需要在other link flag中配置上$(inherited)参数,否则会编译失败。


主页君于 2018.02.23 第四次修订

相关文章

  • CocoaPods小记

    最近Mac 10.13又出了个小坑,更新完之后POD就不能用了,只能重新安装一次。 安装 因为Mac OS El ...

  • cocoapods小记

    前言说明:初始化RN0.61.5版本卡在cocos初始化,以为本地pod环境有问题,于是按网上教程卸载cocoap...

  • Cocoapods小记(一)

    Cocoapods 是iOS 开发中最常用的三方依赖工具,他可以帮我们快速的安装和管理我们开发中需要的三方库。第一...

  • Cocoapods小记(二)

    当我们需要发布一个自己的库到Cocoapods或者 需要修改一个三方库作为自己的私有库时,我们就需要创建一个属于自...

  • CocoaPods 踩坑小记

    记一些工作中遇到的小问题,给需要的人。 模块化项目应该都会遇到类似的问题,业务库经常变动必须在功能开发完成...

  • CocoaPods安装过程小记

    今年过年时刚买了台MBP,准备在新本上进行开发,顺便记录下安装CocoaPods过程。 更新升级Ruby环境移除现...

  • iOS开发之进阶篇(15)—— CocoaPods

    目录 CocoaPods 安装 CocoaPods 使用 CocoaPods 原理简介 1. CocoaPods ...

  • CocoaPods 知识

    CocoaPods 知识 目录前言CocoaPods安装CocoaPods原理CocoaPods使用 1、 前言 ...

  • CocoaPods简单使用

    CocoaPods官网https://cocoapods.org 1、什么是CocoaPods CocoaPods...

  • Cocoapods的原理

    Cocoapods的使用 Cocoapods的原理 ✔️ 一、Cocoapods的介绍 CocoaPods是iOS...

网友评论

      本文标题:CocoaPods小记

      本文链接:https://www.haomeiwen.com/subject/kuobhttx.html