这时需要我们执行以下命令:
git clone https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git ~/.cocoapods/repos/trunk
执行完毕,即可正常搜索出第三方框架了。
至此完结~
gem安装cocoapods的命令是: sudo gem install cocoapods 。
总结:rvm、ruby、gem、cocoapods之间的关系,即rvm是管理ruby这门计算机语言版本的工具。gem和cocoapods是用ruby语言开发出来的工具,gem用来安装cocoapods,而cocoapods是提供给iOS开发者管理第三方框架的工具。
对于iOS开发者而言,我们需要cocoapods这个工具来帮我们管理第三方的框架,但是安装cocoapods,就需要使用gem来安装,gem又需要ruby来安装,ruby又需要rvm来安装。
报这个ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions for the /Library/Ruby/Gems/2.6.0 directory.
权限错误的解决办法
因为ruby环境系统自带,所以Mac系统为了保证自身环境的问题,对权限进行了限制,最终导致一般用户无法对系统的ruby环境相关的文件读写内容。所以解决点也就在这了
解决办法: 1第一种修改权限(不建议这么做,因为是root权限,修改权限可能对系统造成影响,这里不提供修改方法了)
2第二种 两套ruby 环境
第二种方案大体也就分成三步了:
安装针对于用户所使用的ruby环境
导入新的ruby环境的环境变量
查看是否ruby环境是否安装成功
进行安装之前,我们通过以下命令进行排查,查看当前的ruby环境是否是用的系统自带的环境
whichruby
如果ruby使用的路径如下,那么此时就是用的系统自带的ruby环境了
/usr/bin
推荐使用homebrew安装ruby环境,如果没有安装homebrew`,可以通过以下命令安装:
/bin/bash -c"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
假定已经安装了homebrew环境了,使用以下命令进行ruby的安装
brew install ruby
此时可能默认安装到了系统自带的路径,在执行,建议当前安装的最新版本 把2.7.0换成你安装成的最先版本 如果不知道最新版本 可以执行 ruby -v 查看
echo 'export PATH="/usr/local/opt/ruby/bin:/usr/local/lib/ruby/gems/2.7.0/bin:$PATH"' >>~/.zshrc
然后在执行
source ~/.zshrc
继续执行which ruby
此时能看到路径已经不是系统路径了,退出终端重新执行安装cocoapods,问题解决
CocoaPods可以方便地通过Mac自带的RubyGems安装。打开Terminal(Mac电脑自带的终端),然后按照以下提示操作即可:
1.设置ruby的软件源
这是因为ruby的软件源rubygems.org因为使用亚马逊的云服务,被我天朝屏蔽了,需要更新一下ruby的源,过程如下:
` gem sources -l #(查看当前ruby的源)
gem sources --remove https://rubygems.org/ #(移除当前ruby的源)
gem sources -a https://ruby.taobao.org/ #(设置当前ruby的源为我天朝的)
gem sources -l #(再次查看当前ruby的源)
如果Terminal输出:
*** CURRENT SOURCES ***
https://ruby.taobao.org/
就证明ruby的软件源已经设置OK了。
2.设置gem为最新版本
如果gem太老,可以尝试用如下命令升级gem:
在Terminal输入以下命令:
sudo gem update --system
升级成功后会提示: Latest version currently installed. Aborting.
3.执行安装CocoaPods命令
注意:OS X 10.11 升级,虽然官方声称只是一个小的升级,但对于开发者而言,cocoapods需要重新安装,但按照以前的安装方式,在Terminal输入以下命令:
sudo gem install cocoapods
如果报以下错误:
ERROR: While executing gem ... (Errno::EPERM)
Operation not permitted - /usr/bin/xcodeproj
解决方案1:
执行下面的命令并重启
sudo nvram boot-args="rootless=0"
sudo reboot
重启之后, 执行这个命令检查
sudo gem install cocoapods -V
如果依旧有错误,使用第二个方案
解决方案2:
sudo gem install -n /usr/local/bin cocoapods
pod setup
还有一点需要注意,pod setup在执行时,会输出Setting up CocoaPods master repo,但是会等待比较久的时间。这步其实是 Cocoapods 在将它的信息下载到 ~/.cocoapods目录下,如果你等太久,可以试着 cd 到那个目录,用du -sh *来查看下载进度。
安装成功后,你会看到:Setup completed
五、Cocoapods的使用
随便以一种方式新建一个名为Podfile的文件放到你的工程根目录下(不能写成别的名字,也可以自己在工程根目录里面直接新建)
Podfile文件内容的格式应该如下:
platform :ios, '8.0' #(注明你的开发平台以及版本,'8.0'忽略不写即为最新版本)
pod 'AFNetworking', '~>2.5.3' #('~>2.5.3'为版本号,忽略不写即为最新版本)
pod 'SDWebImage', '~>3.7.2'
然后在Terminal进入工程所在的根目录(工程根目录)中执行 :
pod install
这样,AFNetworking和SDWebImage就已经下载完成并且设置好了编译参数和依赖,以后使用的时候切记如下两点:
1.从此以后需要使用Cocoapods生成的 .xcworkspace文件来打开工程,而不是使用以前的.xcodeproj文件
2.每次更改了Podfile文件,都需要重新执行一次pod update命令