公司的mac终于换新的了,新下载了xcode,没有急着安装cocoapods,使用的第三方都是自己手动导入的,最近的项目想用Ractivecocoa,手动导入了几次都没有成功,查看网上都是介绍cocoapods导入工程,就想着将cocoapos安装,以后用着也方便,就开始安装,查看了好多文档,可能文档太老发现都会有错误,最后自己花了两个多小时才将cocoapos安装成功,现在将最新安装步骤写出来,
一、什么是CocoaPods
CocoaPods是iOS项目的依赖管理工具,该项目源码在Github上管理。开发iOS项目不可避免地要使用第三方开源库,CocoaPods的出现使得我们可以节省设置和第三方开源库的时间。
在使用CocoaPods之前,开发项目需要用到第三方开源库的时候,我们需要
1.把开源库的源代码复制到项目中
2.添加一些依赖框架和动态库
3.设置-ObjC,-fno-objc-arc等参数
4.管理他们的更新
在使用CocoaPods后,我们只需要把用到的开源库放到一个名为Podfile的文件中,然后执行pod install.Cocoapods就会自动将这些第三方开源库的源码下载下来,并且为我们的工程设置好响应的系统依赖和编译参数。
二、CocoaPods的原理
CocoaPods的原理是将所有的依赖库都放到另一个名为Pods的项目中,然后让主项目依赖Pods项目,这样,源码管理工作都从主项目移到了Pods项目中。Pods项目最终会编译成一个名为libPods.a的文件,主项目只需要依赖这个.a文件即可。
安装步骤:
1.CocoaPods可以方便地通过Mac自带的RubyGems安装。
打开Terminal,然后键入以下命令:
1.升级Ruby环境
终端输入:
$gem update --system
这时出现警告提示
ERROR: While executing gem ... (Gem::FilePermissionError)
You don‘t have write permissions for the /Library/Ruby/Gems/2.0.0 directory.
这个是因为你没有权限去更新Ruby
这个时候你可以在终端使用:
$sudo gem update —system
来进行升级
$gem sources --remove https://rubygems.org/
$gem sources -a https://ruby.taobao.org/
看到
这样表示淘宝镜像已安装成功成功
接下来在Mac终端中继续输入
$sudo gem install cocoapods
回车之后要输入密码,输入是不提示的,直接输入回车就行,等待一会,我在这一步提示一个错误
在网上找到的方法复制到终端
$sudo gem install -n /usr/local/bin cocoapods
这样警告就解决了 继续往下
这时进入目标文件夹下,创建一个podfile文件,具体步骤如下
$cd 后面是工程的文件路径
创建podfile文件
$ touch Podfile
执行之后会看到工程文件夹下会有一个podfile文件
之后在终端中继续输入 进入到podfile中
$open -e podfile
这时新建一个终端窗口command +N
在新的终端中输入你想要的第三方库,如ReactiveCocoa
$ pod search ReactiveCocoa
找到你想要的版本一般都是最上面的就是最新的
之后再之前打开的podfile文件中输入
platform :ios, '7.2.1' //这里的'7.2.1'表示支持最低的ios版本号
def pods
pod 'ReactiveCocoa' //第三方的库名称
end
target 'ReactiveCocoaUse' do //这个是工程名字
pods
end
platform :ios, ‘7.2.1’ //这里的’7.2.1’表示支持最低的ios版本号
def pods
pod ‘ReactiveCocoa’ //第三方的库名称
end
target ‘ReactiveCocoaUse’ do //这个是工程名字
pods
end
最后在打来podfile的终端窗口中输入
$pod install
会看看到
这样就表示第三方的库导入成功了,在工程文件中会看到多了一个这样的工程文件,以后打开工程就得点击这个打开工程了
不要在使用下面的打开工程了
这样就算安装和导入成功了,
=============下面是后来又添加的内容=================
我在执行pod install 之后突然就出现了这个问题,后台找到了相应的解决办法
遇到这样的报错时,表示xcode的路劲有问题,我们只需修改下选择的路径就可以了,
$sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer