zoukankan      html  css  js  c++  java
  • CocoaPods安装和使用

    CocoaPods是iOS最常用的第三方类库管理工具,绝大部分有名的开源类库都支持CocoaPods。

    CocoaPods是用Ruby实现的,要想使用它首先需要有Ruby的环境。幸运的是OS X系统默认已经可以运行Ruby了,因此我们只需执行以下命令:

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

    由于某些原因,执行时会出现下面的错误提示:

    ERROR:  Could not find a valid gem 'cocoapods' (>= 0), here is why:
              Unable to download data from https://rubygems.org/ - Errno::EPIPE: Broken pipe - SSL_connect (https://rubygems.org/latest_specs.4.8.gz)

    当你使用代理后如果还是很慢,可以用淘宝的RubyGems镜像来代替官方版本,执行以下命令:

    $ gem sources -l
    $ gem sources --remove https://rubygems.org/
    $ gem sources -a https://ruby.taobao.org/
    $ gem sources -a https://gems.ruby-china.org/ $ gem sources -l

    安装成功后,接着执行命令:

    pod setup

    如果Ruby环境不够新,或安装时提示"ERROR:  Error installing cocoapods:activesupport requires Ruby version >= 2.2.2."这样的错误,代表你的ruby需要更新了需要更新一下:

    sudo gem update --system

    如果执行完上面的命令后,还是无法更新到较新的版本,则需要用rvm来更新,具体步骤如下:

    $ curl -L get.rvm.io | bash -s stable
    
    $ source ~/.bashrc
    
    $ source ~/.bash_profile
    
    #测试是否安装正常
    $ rvm -v
    
    #查看当前ruby版本  
    $ ruby -v
     
    #列出已知的ruby版本  
    $ rvm list known
    
    #安装ruby 1.9.3  
    $ rvm install 1.9.3  

    至此安装就完成了,我们可以尝试搜索一个第三方类库:

    pod search AFNetworking

    使用CocoaPods的第一步,是在当前项目下,新建一个Podfile文件:

    touch Podfile

    然后利用vim打开Podfile文件编辑,加入你想要使用的类库,格式如下:

    platform :ios
    pod 'Reachability', '3.1.0'
    
    platform:ios, '6.0'
    pod 'JSONKit','1.4'
    pod 'AFNetworking', '~> 2.3.1'

    如果是拷贝的别人的项目,或是一个很久没打开过的项目,可能需要先执行一下:

    pod update

    最后一步,执行命令:

    pod install

    当终端出现类似下面的提示后,就代表成功了:

    [!] From now on use `Sample0814.xcworkspace`.

    这个时候会看到项目文件夹下多了一个文件xxx.xcworkspace,以后要通过这个文件打开项目,老项目文件xxx.xcodeproj不再使用。

    P.s.1 上面的每一步都有可能出现问题,但大部分问题都是因为大局域网的原因,用一个网速稳定的境外VPN可破。

     

    P.s.2 如果上面因为权限问题安装失败,必须每次都要删除

    rm -rf /Users/loginnanme/Library/Caches/CocoaPods/

    因为这个缓存中会存下你的github的东西,造成每次都调用上次权限问题的缓存。

     

    P.s.3 关于Podfile文件编辑时,第三方库版本号的各种写法:

    pod ‘AFNetworking’      //不显式指定依赖库版本,表示每次都获取最新版本
    pod ‘AFNetworking’,  ‘2.0’     //只使用2.0版本
    pod ‘AFNetworking’, ‘>2.0′     //使用高于2.0的版本
    pod ‘AFNetworking’, ‘>=2.0′     //使用大于或等于2.0的版本
    pod ‘AFNetworking’, ‘<2.0′     //使用小于2.0的版本
    pod ‘AFNetworking’, ‘<=2.0′     //使用小于或等于2.0的版本
    pod ‘AFNetworking’, ‘~>0.1.2′     //使用大于等于0.1.2但小于0.2的版本,相当于>=0.1.2并且<0.2.0
    pod ‘AFNetworking’, ‘~>0.1′     //使用大于等于0.1但小于1.0的版本
    pod ‘AFNetworking’, ‘~>0′     //高于0的版本,写这个限制和什么都不写是一个效果,都表示使用最新版本

    P.s.4 当pod setup 进入Setting up CocoaPods master repo 等待的时候表示正在下载了,此时你可通过新开一个终端窗口,输入"cd ~/.cocoapods/"命令行跳到cocoapods文件夹内,执行"du -sh *"查看正在下载的文件夹的大小。

    删除master分支 重新建立新的分支

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

    删除~/Library/Caches/CocoaPods目录下的search_index.json文件

    • pod setup成功后,依然不能pod search,是因为之前你执行pod search生成了search_index.json,此时需要删掉。
    • 终端输入:rm ~/Library/Caches/CocoaPods/search_index.json
    • 删除成功后,再执行pod search

     

  • 相关阅读:
    POJ 3126 Prime Path
    POJ 2429 GCD & LCM Inverse
    POJ 2395 Out of Hay
    【Codeforces 105D】 Bag of mice
    【POJ 3071】 Football
    【POJ 2096】 Collecting Bugs
    【CQOI 2009】 余数之和
    【Codeforces 258E】 Devu and Flowers
    【SDOI 2010】 古代猪文
    【BZOJ 2982】 combination
  • 原文地址:https://www.cnblogs.com/CoderWayne/p/3912882.html
Copyright © 2011-2022 走看看