前提告知:安装CocoaPods需要Ruby环境,所以,首先要检查Ruby环境的版本!
Mac OS X 系统自带的 Ruby,但是如果不管理它,它是不会自动升级滴,所以,我们需要一个ruby版本及安装工具管理它,那是什么呢?
Ruby的管家婆登场-----》RVM全称Ruby Version Manager,是一个非常好用的Ruby版本以及安装工具。就是用来安装和控制Ruby版本的工具。
RVM也是需要我们自己安装的,所以,别发废话,开始安装~~
第一步,首先要检查Mac是否安装了rvm(ruby version manager)。打开终端,输入指令$ rvm -v,"$"不用输入
(1)如果存在,则会出现下面的情况:
liangxiaolongdeMacBook-Pro:~ liangxiaolong$ rvm -v
rvm 1.29.3 (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io]
* 如果之前安装过 RVM 想要更新 则
$ rvm get stable
* 如果失败,可以尝试前面加上 sudo权限
$ sudo rvm get stable
(2)如果不存在,则会出现下面的情况:
liangxiaolongdeMacBook-Pro:~ liangxiaolong$ rvm -v
-bash:rvm:command not found
step1 :安装rvm
方法一:curl -L https://get.rvm.io | bash -s stable
方法二:curl -L get.rvm.io | bash -s stable
安装成功标志:
liangxiaolongdeMacBook-Pro:~ liangxiaolong$ rvm -v rvm 1.29.3 (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io] liangxiaolongdeMacBook-Pro:~ liangxiaolong$ curl -L get.vim.io | bash -s stable % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- 0:01:15 --:--:-- 0curl: (7) Failed to connect to get.vim.io port 80: Operation timed out liangxiaolongdeMacBook-Pro:~ liangxiaolong$ rvm -v rvm 1.29.3 (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io] liangxiaolongdeMacBook-Pro:~ liangxiaolong$ curl -L https://get.rvm.io | bash -s stable % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 194 100 194 0 0 85 0 0:00:02 0:00:02 --:--:-- 85 100 24361 100 24361 0 0 5274 0 0:00:04 0:00:04 --:--:-- 13312 Downloading https://github.com/rvm/rvm/archive/1.29.3.tar.gz Downloading https://github.com/rvm/rvm/releases/download/1.29.3/1.29.3.tar.gz.asc Found PGP signature at: \'https://github.com/rvm/rvm/releases/download/1.29.3/1.29.3.tar.gz.asc\', but no GPG software exists to validate it, skipping. Upgrading the RVM installation in /Users/liangxiaolong/.rvm/ RVM PATH line found in /Users/liangxiaolong/.mkshrc /Users/liangxiaolong/.profile /Users/liangxiaolong/.bashrc /Users/liangxiaolong/.zshrc. RVM sourcing line found in /Users/liangxiaolong/.profile /Users/liangxiaolong/.bash_profile /Users/liangxiaolong/.zlogin. Upgrade of RVM in /Users/liangxiaolong/.rvm/ is complete. Upgrade Notes: * WARNING: \'~/.profile\' file found. To load it into your shell, add the following line to \'/Users/liangxiaolong/.bash_profile\': source ~/.profile * No new notes to display.
Step 2: 载入RVM环境
source ~/.rvm/scripts/rvm
Step 3: 查看版本确认是否安装成功 rvm -v
liangxiaolongdeMacBook-Pro:~ liangxiaolong$ rvm -v
rvm 1.29.3 (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io]
若出现该图中的文字,那么说明已经安装过了rvm
Step 4: 列出所有指定源里的ruby版本 rvm list known
rvm list known
结果显示:
liangxiaolongdeMacBook-Pro:~ liangxiaolong$ rvm list known # MRI Rubies [ruby-]1.8.6[-p420] [ruby-]1.8.7[-head] # security released on head [ruby-]1.9.1[-p431] [ruby-]1.9.2[-p330] [ruby-]1.9.3[-p551] [ruby-]2.0.0[-p648] [ruby-]2.1[.10] [ruby-]2.2[.7] [ruby-]2.3[.4] [ruby-]2.4[.1] ruby-head
第二步,用rvm安装ruby环境
注意,当ruby版本低于2.2.2时,安装cocoapods会报错,可通过指令 ruby -v检查当前版本。如果版本低于2.2.2,啥也不要说快更新一下。
输入指令:rvm install 2.4.1(如上图中,最新版本就是2.4.0),然后根据提示按“enter”键。
安装完成之后输入指令rvm list查看ruby版本,看看是否安装成功,如下图
第三步,检查更新RubyGems(Ruby1.9.1 以后的版本自带RubyGems)
RubyGems是一个方便而强大的Ruby程序包管理器,Ruby的第三方插件是用gem方式来管理,非常容易发布和共享,一个简单的命令就可以安装上第三方的扩展库。
建议RubyGems升级到2.6.x以上。
查看RubyGems的版本用指令:gem -v 得到结果如下内容:
liangxiaolongdeMacBook-Pro:~ liangxiaolong$ gem -v
2.6.14
更新RubyGems的版本指令:gem update --system
liangxiaolongdeMacBook-Pro:~ liangxiaolong$ gem update --system
Latest version currently installed. Aborting.
注意:如果提示 while executing gem filePermissionError
证明没有权限 需要加上sudo
$ sudo gem update —system
可以看到updating到了100% 但是没有安装成功
$ sudo gem update -n /usr/local/bin —system //安装成功
第四步,检查ruby源并移除
先是检查ruby源,gem sources -l 结果如下:
liangxiaolongdeMacBook-Pro:~ liangxiaolong$ gem sources -l *** CURRENT SOURCES *** https://rubygems.org/
然后移除,gem sources --remove https://rubygems.org/ 移除结果:
liangxiaolongdeMacBook-Pro:~ liangxiaolong$ gem sources --remove https://rubygems.org/
https://rubygems.org/ removed from sources
替换添加国内的镜像源,之所以要添加国内的ruby-china源,是因为taobao源已经停止维护了,所以此处替换的是ruby-china源,且尽量确保只有一个。输入指令gem sources --add https://gems.ruby-china.org 替换结果如下图:
liangxiaolongdeMacBook-Pro:~ liangxiaolong$ gem source --add https://gems.ruby-china.org https://gems.ruby-china.org added to sources liangxiaolongdeMacBook-Pro:~ liangxiaolong$ gem sources -l *** CURRENT SOURCES *** https://gems.ruby-china.org
【1】ruby源已经是https://gems.ruby-china.org
【更新通知】
【2】ruby源已经是https://gems.ruby-china.com/
原因:
【更新通知】
【3】ruby源https://gems.ruby-china.com/已经停止更新(镜像404了,不提供服务。)
解决:
gem sources -a https://rubygems.org/
添加源来的ruby镜像,感觉速度不慢了。毕竟ruby-china也关了。
关于RubyGems近况及详情: 传送门
第五步,安装CocoaPods(sudo 表示管理员执行指令,需要输入密码的)
安装cocoapods,$ sudo gem install cocoapods
注意:
OS X 10.11之前系统的安装cocoapods 指令:$ sudo gem install cocoapods
OS X 10.11以后系统的安装cocoapods 指令:$ sudo gem install -n /usr/local/bin cocoa pods
如果有 gems installed标志着安装成功了。
到这里,cocoapods已经安装成功了!恭喜恭喜!!!
第六步,cocoapods集成第三方框架到项目工程里面去
step 1:先去xcode中创建一个项目
step 2:打开终端,输入 cd 项目路径
注意:cd指令的意思是进入某个文件夹中 项目路径可以通过拖拽方式,拖拽到终端
step 3:进入了项目路径后,输入指令vim podfile创建podfile文件,然后按i进入到编辑模式,出现如下图:
在如上图中,输入
platform:ios,\'8.0\' target \'你的工程名\' do pod \'AFNetworking\', \'~>3.1.0\' (如果不加 , \'~>3.1.0\' 则它会下载最新的版本) end
配置好要集成的第三方库,按键盘的esc,接着按 :然后输入wq 按回车键
最后输入指令
pod update --verbose --no-repo-update
或者
pod install --verbose --no-repo-update
到这步,没出错,说明你项目中已经集成成功第三方框架,打开如下图红框里面工作空间
如何删除项目中已经由cocoapods配置好的第三方
第一部分将介绍如何删除项目中已经由cocoapods配置好的第三方
1.打开项目中的Podfile文件
3.打开终端cd到当前项目的根目录下重新执行pod install --verbose --no-repo-update命令
当命令运行完后项目中的Snapkit第三方就已经被移除
第二部分:删除cocoapods
某种特殊情况下我们甚至都不想使用cocoapods了,这时我们想要将cocoapods彻底的从项目中移除,不留一点痕迹,略微有点麻烦,
1.删除工程文件夹下的Podfile、Podfile.lock和Pods文件夹,xcworkspace文件。
2.打开xcodeproj文件,删除项目中的Pods文件夹及Framework文件夹(此时这两个文件夹中的文件已经报红,说明此时这些文件已经不存在)
3.删除配置文件: 打开Build Phases选项,删除Check Pods Manifest.lock和Copy Pods Resources,以及Embeded Pods Frameworks
4.删除项目中引用的头文件及相关的代码
-pod安装
# 添加源 $ sudo gem sources -a https://ruby.taobao.org/ # 删除源 $ sudo gem sources -r https://rubygems.org/ # 安装 $ sudo gem install cocoapods # 设置 $ pod setup
RubyGems相关命令
gem相关命令使用 1.显示gem的帮助和版本 gem –h/--help #显示gem的帮助 gem –v /--version #显示gem的版本号 2. 列出远程库的所有可用软件 gem query --remote # 短命令: gem q -r 你可以看到一个关于远程主机上所有软件的详细列表。 3. 查找远程主机上的特定软件 gem query --remote --name-matches doom # 短命令: gem q -rn doom
你将看到一个匹配doom的详细列表。 gem list –remote --d #用子命令list列出远程安装的gems 4.1 安装一个远程软件 gem install --remote progressbar # 短命令: gem i -r progressbar –y 远程安装progressbar到你的主机,-y的意思是无条件的安装依赖包 gem install rails –remote #从远程服务器安装rails包,其中rails可以被替换成任何一个gem list –remote –d中显示的软件包 4.2 安装软件的特定版本 gem ins -r progressbar-0.0.3 安装progressbar的0.0.3版本 gem ins -r progressbar --version \'> 0.0.1\' 将安装progressbar的大于0.0.1的最新版本
5. 查看一个已安装的软件 gem specification progressbar # 短命令: gem spec progressbar 你会看到关于已安装的包progressbar的详细信息。 6. 卸载一个软件 gem uninstall progressbar 卸载了progressbar 7.1 将所有安装的软件列表 gem query --local # 短命令: \'gem q -l\' 7.2 查看某个已安装的软件 gem query --local --name-matches doom # 短命令: \'gem q -ln doom\' 或:gem list --local
CocoaPods相关命令
# 第一次使用安装框架 //只用安装一次,之后使用 添加删除都用 pod update --no-repo-update $ pod install # 安装框架,不更新本地索引,速度快 $ pod install --no-repo-update # 今后升级、添加、删除框架,或者框架不好用 $ pod update # 更新框架,不更新本地索引,速度快 $ pod update --no-repo-update # 搜索框架 $ pod search XXX 帮助 $ pod --help