安装CocoaPods过程以及遇到Error installing pods:activesupport requires Ruby version >=2.2.2解决方案以及使用Cocoapo...

最近Cocoapods忽然间不知道怎么弄的,不知道是不是不小心删除了什么,导致无法pod第三方框架,提示为Setting up CocoaPods master repo ,一直没有反应。然后进入在终端输入cd ~/.cocoapods/,再次输入查看下载进度du -sh *,我几分钟查看一次发现刚开始是632k,有时候又到了1M,速度非常慢.
隔天我又继续执行pod setup,结果Setting up CocoaPods master repo还是没响应,速度还是超级慢,
于是突发奇想,叫装了cocoapods的同事把这个目录下~/.cocoapods/中的repos文件中打包发给我了。然后我替换下。然后在终端pod search AFNetworking提示[!] Unable to find a pod with name, author, summary, or description matchingAFNetworking.再次在终端敲入rm ~/Library/Caches/Cocoapods/search_index.json,然后退出终端,重新pod search AFNetworking`,就正常显示框架的所有信息了。查看了好多了关于装Cocoapods的资料,但是好多之前发表的,为此本人将最新的安装方式贴出来,一起学习学习。

检查CocoaPods是否有问题,终端输入

pod --version
pod pod search AFNetworking
如果这两项都没有什么问题的话,那就万事大吉了,如果情况不妙,则请看下面

Cocoapods安装步骤

  • 1.先升级Gem
    sudo gem update --system

  • 2.切换cocoapods的数据源【先删除,再添加,查看】
    gem sources --remove https://rubygems.org/
    gem sources -a https://ruby.taobao.org/ (被废用,但目前也有人在用。如今大部分使用gem sources -a http://rubygems-china.oss.aliyuncs.com)
    gem sources -l(如果你不知道你安装的是哪种,可执行这条命令进行查询)

  • 3.安装cocoapods
    sudo gem install cocoapods
    或者(若10.11系统以上执行这条命令)sudo gem install -n /usr/local/bin cocoapods

  • 4.将Podspec文件托管地址从github切换到国内的oschina 【先删除,再添加,再更新】
    pod repo remove master
    pod repo add master http://git.oschina.net/akuandev/Specs.git
    pod repo add master https://gitcafe.com/akuandev/Specs.git
    pod repo update

  • 5.设置pod仓库
    pod setup

  • 6.测试
    【如果有版本号,则说明已经安装成功】
    pod --version

  • 7.安装完毕。如果懒的手动通过终端来添加第三方框架,可将Cocoapods集成到项目中,如图:

    Snip20160817_2.png

    到github官方中下载运行即可,github送上门重启Xcode即可。点击图上的'Create/Edit Podfile'即可编辑


source 'https://github.com/CocoaPods/Specs.git'
platform :ios, "SDK版本" 


target ‘工程名’ do   
pod '框架名'[, ‘~> 版本号’]

end
  • 最后的最后:编辑完成后command+s保存,之后再点击Product->Cocoapods->Install Pods 完事。

使用终端集成第三方框架

  • 打开终端 cd +空格+项目路径<将项目拽进去即可>
  • 再输入 pod init,项目路径下就有了Podfile
Podfile
  • 最后终端输入pod install即可,这时就会自己创建.xcworkspace,之后就可以再这里面愉快敲敲了。。。。

移除到重新安装

  • 更新cocoapods主支
    pod repo update
  • 移除
    sudo gem uninstall -n /usr/local/bin cocoapods
  • 安装
    sudo gem install -n /usr/local/bin cocoapods
  • 设置pod仓库
    pod setup
  • 查看安装版本(如果有版本号,则说明已经安装成功)
    pod version
  • 执行pod setup会出现Setting up CocoaPods master repo由下图看到占用内存的大小,这个过程下载可能会很慢,因为有网速好的应该会快点,网速不好的,建议使用替换这个方式,点击下载repos进行替换
    Snip20160817_1.png
  • 替换完成执行pod search AFNetworking,报错[!] Unable to find a pod with name, author, summary, or description matchingAFNetworking.`
  • 执行rm ~/Library/Caches/Cocoapods/search_index.json即可
  • 重新搜索pod search AFNetworking
    -OK完事!!!

补充:
错误:遇到 Error installing pods:activesupport requires Ruby version >=2.2.2


Snip20160921_1.png

解决方案 :
1、安装 RVM baby 版本管理器
$curl -L get.rvm.io | bash -s stable

//等安装完成 出现下面这行提示以下

In case of problems: https://rvm.io/helpandhttps://twitter.com/rvm_io

执行
source ~/.bashrcsource ~/.bash_profile
测试是否安装正常
$rvm -v

//提示以下

rvm 1.27.0 (latest) by Wayne E. Seguin, Michal Papis[https://rvm.io/]

2、用RVM升级Ruby查看当前ruby版本
ruby -vrvm 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[.8]
[ruby-]2.2[.4]
[ruby-]2.3[.0]
[ruby-]2.2-headruby-head

# for forks use: rvm install ruby-head---url https://github.com/github/ruby.git --branch 2.2
# JRuby

3.安装ruby 2.2.2 执行
$rvm install 2.2.2

Snip20160921_4.png
  1. 继续安装 CocoaPods
    sudo gem install cocoa podssudo gem install -n /usr/local/bin cocoapods
    $pod setup //可将~/.cocoapods/目录下中的repos替换掉如何替换看最最上面,半小时的事情,1分钟就搞定)。

错误:集成第三方框架Cocoapods后
后台打印:env: ruby_executable_hooks: No such file or directory

Snip20160921_5.png

解决措施:
在终端输入 which ruby_executable_hooks 或 which GEM
把得到的路径复制,打开Xcode-> Product-> cocoaPods - >GEM_PATH 粘贴刚才得到的路径 把最后的/gem/pod去掉(一定要把后面的/gem/pod去掉)

截图:


Snip20160921_6.png

使用Cocoapods 没自动有生成.workspace文件

把Xcode升级到8.1之后发现能集成第三方进去但是就是不生成.xcworkspace文件,不管是通过终端集成进去的还是通过第三方插件集成进去的,都不行,百度了好久,千遍一律的都是查一下版本 pod COMMAND --version 是是版本过低 需更新版本sudo gem install cocoa pods 我也试过了,然后行不通。
行不通咋整??????

另寻出路

在终端输入pod search SDWebImage 显示

Snip20161214_7.png

那么问题来了。。。。

问题显而易见,不用捉急。听俺娓娓道来

替换repos文件即可。上面有链接下载。再点击桌面任意空白地方 command+shift+G<快键键> 输入 ~/.cocoapods/进入到此处。将下载的repos的文件解压替换即可 。
最后终端再次输入pod search SDWebImage ,你会发现有一波僵尸进入

Snip20161214_8.png

最后只需要pod install就可以了。不管是用第三方还是使用终端。如果是使用终端 记得cd切换到当前目录下再pod install 。最后你会发现XXX.xcworkspace就这样悄无声息神奇般再次出现你的视线中。熟悉的感觉回来了!!!!!

2018.4.20更新

遇到的问题纠结的点请欣赏截图

7C6A53A482A314214B192E3A3C855ACD.jpg

pod search XX 有些搜索的到有些 搜索不到

Why?Why?Why?

解决措施
删除~/Library/Caches/CocoaPods目录下的search_index.json文件即可

    1. 单击桌面 ->快捷键(command + shift + G)->输入路径~/Library/Caches/CocoaPods/search_index.json
    1. 终端输入rm ~/Library/Caches/CocoaPods/search_index.json
  • 3.删除成功后再执行pod search XXX

再次欣赏截图


图片.png

注意

由于刚移除search_index.json,第一次搜索时较慢,会出现Creating search index for spec repo 'master'.. Done!
此时只需要静静等待一会即可。我貌似等了1-2分钟左右(跟公司网络有点关系)

2019.3.21 记录一波

由于换了置换了新的电脑,则遇到了一些的问题,故则记录一波

遇到的问题纠结的点请欣赏截图

图片.png

由截图可以看到执行gem sources -l之后可以看到当前地址为空

解决ERROR: Could not find a valid gem 'cocoapods' (>= 0) in any repository 的措施为更改镜像或添加镜像。

科普一下gem相关命令
$ gem sources -l 显示当前地址
添加一个source
gem sources -a url 地址
删除一个source
gem sources -r url 地址
更新source cache
gem sources -u

图片.png

紧接着执行命令sudo gem install cocoapods

图片.png

于是新的问题又产生了
ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions for the /usr/bin directory.

解决方式

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

图片.png

由上截图可以看出完美搞定

网络情况好的话自己直接执行pod setup即可,如果网络不好的话,可以叫装了cocoapods的同事把这个目录下~/.cocoapods/中的repos文件夹发给你,然后你把该文件夹放到该目录下即可。。。

执行setup后,网络一般。在家里弄的,有时候看电视都有点卡,现在居然半小时就搞定了,简直是太辣👀了

图片.png

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

推荐阅读更多精彩内容