CocoaPods

作者: DDY | 来源:发表于2016-11-09 12:53 被阅读122次

    <#这个不是命令,包括尖括号#>

    Dream.png
    一、源设置
    1. 查看源,终端输入: sudo gem sources -l
    2. 删除已有的源,如: sudo gem sources --remove https://rubygems.org/
    3. 添加淘宝镜像,如: sudo gem sources -a https://ruby.taobao.org/
      <# 可能改为https://gems.ruby-china.org/ #>
    4. 看是否真的添加上: sudo gem sources -l
    5. 若出现 https://ruby.taobao.org/ (或https://gems.ruby-china.org/) 则添加成功
    二、防错误----没错误这个步骤二忽略
    1. 升级gem: sudo gem update --system
    2. 删除缓存 ,防止出现undefined method 'size' for nil :NilClass(No MethodError)
      2.1 查看gem环境: gem env
      2.2 找到GEM PATHS 如显示:

    \- GEM PATHS:  
    \- /usr/local/ruby/lib/ruby/gems/2.1.0  
    \- /home/vagrant/.gem/ruby/2.1.0

    2.3 分别进入下面的目录,如:
    cd /usr/local/ruby/lib/ruby/gems/2.1.0
    cd /home/vagrant/.gem/ruby/2.1.0
    2.4 删除cache 如: rm -rf cache

    1. 回到用户目录: cd ~
      执行sudo gem install cocoapods出现错误:
      ERROR: While executing gem ... (Errno::EPERM)
      Operation not permitted - /usr/bin/xcodeproj

    解决办法: 自定义GEM_HOME
    命令行操作:
    $ mkdir -p $HOME/Software/ruby
    $ export GEM_HOME=$HOME/Software/ruby
    $ gem install cocoapods

    出现 1 gem installed
    $ sudo gem install -n /usr/local/bin cocoapods
    $ export PATH=$PATH:$HOME/Sofware/ruby/bin
    $ pod --version
    出现版本号,例如0.39.0

    三、安装cocoaPods

    1 sudo gem install xcodeproj
    2 sudo gem install cocoapods (也可以brew install cocoapods)
    3 pod setup

    如果出现错误

    [!] /usr/bin/git clone https://github.com/CocoaPods/Specs.git master
    Cloning into'master'...
    error: RPC failed; curl56SSLRead()returnerror -36
    fatal: The remote end hung up unexpectedly
    fatal: early EOF
    fatal: index-pack failed
    

    方案:
    终端输入 sudo xcode-select --print-path 查看Xcode路径
    然后复制路径,执行 sudo xcode-select -switch 路径
    如: sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer
    执行 sudo rm -fr ~/.cocoapods/repos/master 删除repos目录下master
    再执行 pod setup

    出现

    Cloning into 'master'...
    error: RPC failed; curl 56 SSLRead() return error -9806
    fatal: The remote end hung up unexpectedly
    fatal: early EOF
    fatal: index-pack failed
    

    方案:
    终端依次执行

    $ brew remove git
    $ brew remove curl
    $ brew install openssl
    $ brew install --with-openssl curl
    $ brew install --with-brewed-curl --with-brewed-openssl git
    

    4 pod init (失败可忽略)

    四、使用cocoaPods

    1 进入工程目录 cd <#空格后面拖进来工程文件夹#>
    2 建立Podfile: touch Podfile <#名字就是Podfile,不能自定义,建立命令也可以用vim#>
    3 搜索三方库,同时看是否支持该库:
    pod search AFNetworking <#前几行找,把pod ‘AFNetworking’, ‘~>2.5.3’复制#>
    4 打开Podfile: open -e Podfile <#命令也可以用vim#>
    5 将上面赋值的内容粘贴进来,Podfile格式如下

    platform :ios, '9.3'
    pod 'AFNetworking', '~> 2.6.3'
    

    6 执行 pod install
    不需要遍历所有 pod install 换成 pod install --verbose --no-repo-update
    7 需要更新三方才用此步骤,更新 pod update --verbose --no-repo-update

    • Podfile
    =begin
    这里写注释
    =end
    
    platform :ios, '8.0'
    
    pod 'AFNetworking', '~> 3.1.0'
    pod 'Masonry', '~> 1.0.0'
    pod 'SVProgressHUD', '~> 2.0.3'
    pod 'SDWebImage', '~> 3.7.5'
    
    =begin
    
    可以这样写
    
    source 'https://github.com/CocoaPods/Specs.git' 
    
    platform :ios, '7.0'
    inhibit_all_warnings!
    
    xcodeproj 'Demo.xcodeproj'
    
    target :Demo1 do
     pod 'Masonry', '~> 1.0.0'
     pod 'MBProgressHUD', '~> 0.9.2'
     pod 'iCarousel', '~> 1.8.2'
     pod 'MJRefresh', '~> 3.1.0'
     pod 'MJExtension', '~> 3.0.10'
     pod 'AFNetworking', '~> 3.1.0'
     pod 'SDWebImage', '~> 3.7.5'
     pod 'SVProgressHUD', '~> 2.0.3'
     pod 'FMDB', '~> 2.6.2'
    end
    target :Demo2 do
     pod 'MBProgressHUD', '~> 0.9.2'
    end
    
    =end
    
    =begin
    
    touch Podfile 建立Podfile文件
    
    open -e Podfile 文本编辑打开Podfile文件
    
    pod install --verbose --no-repo-update  不遍历所有库
    
    =end
    

    重新安装CocoaPods

    • 1.卸载

    移除组件
    cocoapods组件位置 which pod
    手动移除组件 sudo rm -rf <path>

    移除 RubyGems 中的 Cocoapods程序包
    RubyGems(简称 gems)是一个用于对 Ruby组件进行打包的 Ruby 打包系统。 它提供一个分发 Ruby 程序和库的标准格式,还提供一个管理程序包安装的工具。
    查看gems中本地程序包 gem list
    或者 gem list --local | grep cocoapods 查看cocoapods相关

    移除相关

    sudo gem uninstall cocoapods -v <版本号>
    sudo gem uninstall cocoapods-core
    sudo gem uninstall cocoapods-deintegrate

    卸载RVM sudo rm -rf .rvm .rvmrc /etc/rvmrc ;gem uninstall rvm
    安装RVM curl -L https://get.rvm.io | bash -s stable

    如果出现 WARNING: you have GEM_HOME="/..." this is conflicting with RVM, make sure to: unset GEM_HOME 那就执行 unset GEM_HOME,再执行curl -L https://get.rvm.io | bash -s stable,不出现忽视该条

    载入RVM环境 source ~/.rvm/scripts/rvm

    检查安装成功版本 rvm -v

    查看已安装ruby rvm list ,并移除相应版本 rvm remove <版本号>,没有则忽略
    更改为淘宝镜像 echo "ruby_url=https://cache.ruby-china.org/pub/ruby" > ~/.rvm/user/db
    否则你可以睡一觉再回来看是否安装完
    列出已知ruby版本 rvm list known 并安装 rvm install <版本号>
    Error running '__rvm_make -j 1' 错误 执行 xcode-select --install
    安装成功,设置默认ruby版本 rvm <版本号> --default
    测试安装成功ruby版本 ruby -v
    之后重新从文章开头执行安装cocoapods过程

    相关文章

      网友评论

        本文标题:CocoaPods

        本文链接:https://www.haomeiwen.com/subject/sigzuttx.html