• 最新cocoapods安装流程,安装过程中遇到的问题及解决方法


    最近重新安装了一次cocoapods,参考的安装流程:http://blog.csdn.net/showhilllee/article/details/38398119/

    但是现在的cocoapods与之前比较。有很多不一样的地方。挣扎了2天,终于搞定。现在纪录一下。

    1.首先查看ruby是否是最新版的。ruby是通过rvm安装的所以需要先安装rvm后查看ruby是否是最新的(通过查看ruby版本列表来判断),在终端需要中输入以下命令:

      (1)安装RVM.RVM:Ruby Version Manager,Ruby版本管理器,包括Ruby的版本管理和Gem库管理(gemset)

          curl -L get.rvm.io | bash -s stable

          等待一段时间后就可以成功安装好 RVM

          source ~/.bashrc  

          source ~/.bash_profile 

          测试是否安装正常

          rvm -v

     (2)用RVM升级Ruby

    1. #查看当前ruby版本  
    2. $ ruby -v  
    3. ruby 2.0.0  
    4. #列出已知的ruby版本 --找到最新的版本安装 
    5. $ rvm list known  
    6. #安装ruby 2.6.4  
    7. $ rvm install 2.6.4

    2.更换Ruby镜像--淘宝的那个镜像(https://ruby.taobao.org/ )已经不可用了。官方的需要FQ。所以我们现在用最新支持的ruby镜像(https://gems.ruby-china.org/)

      需要的命令行:

      gem sources --remove https://rubygems.org/ 
      gem sources -a https://gems.ruby-china.org/ 
      gem sources -l  (用来检查使用替换镜像位置成功)

      出现则说明成功了。

    3.下载安装CocoaPods

      在命令行中输入:

      安装:sudo gem install cocoapods 

      更新:sudo gem update cocoapods 

      在这里会很快就好了。。。网上教程说这样就已经完成安装了。。但我试了一下,直接搜索一下。在终端中输入:pod search  AFNetworking。会出现“Setting up CocoaPods master repo“提示,而且很久一直不动,网上说因为没FQ的原因。但是我们已经将bury镜像已经改了,为什么还会这样呢?。还有一个原因是因为在后台下载,还没下载完成,所以会这样。

      在这里我等了好久。通过新开一个终端窗口,输入"cd ~/.cocoapods/"命令行跳到cocoapods文件夹内,执行"du -sh *"查看文件夹的大小。发现一直是0。快崩溃了。下班回去休息。

    第二天。我重头再来。首先将ruby更新到最新(上边方法)、将gem更新到最新、将cocoapods更新到最新。在将cocoapods更新到最新时,查到需要执行"pod setup",但是执行这个时会出现一直是“Setting up CocoaPods master repo“,但是查看大小还是0。此外还会出现下面这个新的错误(这个发现让我欣喜若狂,起码不是那么单调了,或许会成为突破口):

    [!] An error occurred while performing `git pull` on repo `master`.

    [!] /usr/bin/git pull --ff-only

    这个错误应该是说这个节点有问题。就又找资料,然后试试把cocoapods的节点删除,重新添加一个节点,或许就行,说干就干:

    原因: Cocoapods的分支不支持当前最新的Xcode版本

    解决办法: 删除master分支 重新建立新的分支

    sudo rm -fr ~/.cocoapods/repos/master

    然后再: pod setup

    ------------------------------分割线-----------------------------------------------------

    在pod setup的过程中又是这个提示"Setting up CocoaPods master repo",当时的感觉就快要砸电脑了,最后不死心去查看了一下cocoapods文件夹的大小。结果:

     

    。。没错,没有看错,大小居然一直在增加。心怀激动的慢慢等待。

    过了大概十几二十分钟左右,pod setup这个操作成功了。

    这样,整个cocoapods安装应该成功了吧。我迫不及待的 想要试试。输入"pod search AFNetworking" 居然有内容出来。然后按照之前的教程在终端中,cd到项目总目录

    cd /Users/md098/Desktop/PodTest

    建立Podfile(配置文件)

     接着上一步,终端输入 vim Podfile

    键盘输入 i,进入编辑模式,输入

    platform :ios, '7.0' 
    pod 'MBProgressHUD', '~> 0.8'

    然后按Esc,并且输入“ :”号进入vim命令模式,然后在冒号后边输入wq

    注意:键盘输入 :后,才能输入wq。回车后发现PodTest项目总目录中多一个Podfile文件

    激动人心的时刻到了:确定终端cd到项目总目录,然后输入 pod install。。。然后你会发现。。。

    提示这个错误:[!] The dependency `MBProgressHUD` is not used in any concrete target.

    原来新的cocoapods不能像之前那样安装第三方了。现在的格式是要加上项目的target。如下:

    platform :ios, '8.0'

    use_frameworks!

    target 'MyApp' do 

        pod 'AFNetworking', '~> 2.6'

        pod 'ORStackView', '~> 3.0'

        pod 'SwiftyJSON', '~> 2.3'

    end

    • 里面的 MyApp 记得替换为自己攻城里面的target。这样就基本OK了,执行pod install / pod update 就都可以了。

    end:终于结束了。总结:安装过程出错,则删除并重新(更新)所有的需要的环境:(ruby、gem、cocoapods、其中包括cocoapods的节点),替换新的ruby镜像即可。

     

  • 相关阅读:
    Java实现 LeetCode 402 移掉K位数字
    Java实现 LeetCode 402 移掉K位数字
    Java实现 LeetCode 401 二进制手表
    Java实现 LeetCode 401 二进制手表
    wpa_supplicant使用笔记-wpa_cli iwconfig
    Linux下的定时器:alarm()与setitimer()
    在 Windows 下远程桌面连接 Linux
    assert()函数用法总结
    linux下svn修改用户名和密码
    VirtualBox
  • 原文地址:https://www.cnblogs.com/guanshenbao/p/5534578.html
Copyright © 2020-2023  润新知